Joomla 1.5 virtuemart 1.1.5 отображенеие товара в виде таблицы с четкими границами

Тема в разделе "Изменение шаблона (кастомизация)", создана пользователем Expertseo, 26.10.2010.

  1. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    ребята кто знает ? ткните носом начинающего где править код для достижения четких границ таблицы отображения товара ? нужен вот такой результат [​IMG]
     
  2.  
  3. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    а какой сейчас?
     
  4. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    сейчас без черных линий, как их сделать ?
     
  5. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    Те , граница ячеек и столбцов белого цвета, надо бы сделать черным или каким другим
     
  6. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    firebug'ом пользоваться умеешь?
    при его помощи можно посмотреть какой класс в CSS отвечает за отображение ячеек, если он вообще задан

    если не задан тогда иди в /components/com_virtuemart/themes/default/templates/browse/includes/ и смотри файл browse_listtable.tpl.php
     
  7. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    Скачал firebug, посмотрел , вроде как не задан класс, но точно не уверен, вот содержимое файла browse_listtable.tpl.php
    Код (PHP):
    1. <?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    2. mm_showMyFileName(__FILE__); ?>
    3.  
    4. <?php echo $buttons_header // The PDF, Email and Print buttons ?>
    5. <?php echo $browsepage_header // The heading, the category description ?>
    6. <?php echo $parameter_form // The Parameter search form ?>
    7. <?php echo $orderby_form // The sort-by, order-by form PLUS top page navigation ?>
    8.  
    9. <?php
    10. $data =array(); // Holds the rows of products
    11. $i = 1; $row = 0; // Counters
    12.  
    13. // Table header
    14. $tableheader[] = $VM_LANG->_('PHPSHOP_CART_NAME');
    15. $tableheader[] = $VM_LANG->_('PHPSHOP_CART_SKU');
    16. if( _SHOW_PRICES && $auth['show_prices'] ) {
    17.     $tableheader[] = $VM_LANG->_('PHPSHOP_CART_PRICE');
    18. }
    19. $tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_FORM_THUMB_IMAGE');
    20. $tableheader[] = $VM_LANG->_('PHPSHOP_PRODUCT_DESC_TITLE');
    21. if( _SHOW_PRICES && $auth['show_prices'] && USE_AS_CATALOGUE != '1' ) {
    22.     $tableheader[] = $VM_LANG->_('PHPSHOP_CART_ACTION');
    23. }
    24.  
    25. // Creates a new HTML_Table object that will help us
    26. // to build a table holding all the products
    27. $table = new HTML_Table('width="100%"');
    28.  
    29. $table->addRow( $tableheader, 'class="sectiontableheader"', 'th', true );
    30.  
    31. foreach( $products as $product ) {
    32.        
    33.         foreach( $product as $attr => $val ) {
    34.             // Using this we make all the variables available in the template
    35.             // translated example: $this->set( 'product_name', $product_name );
    36.             $this->set( $attr, $val );
    37.         }
    38.        
    39.         $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'.$product['product_name'].'</a>';
    40.         $data[$row][] = $product['product_sku'];
    41.         if( _SHOW_PRICES && $auth['show_prices'] ) {
    42.             $data[$row][] = $product['product_price'];
    43.         }
    44.         $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
    45.                         . ps_product::image_tag( $product['product_thumb_image'] )
    46.                         . '</a>';
    47.         $data[$row][] = $product['product_s_desc'];
    48.         if( $product['has_addtocart'] ) {
    49.             $data[$row][] = $product['form_addtocart'];
    50.         }
    51.         else {
    52.             $data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
    53.                             .   $product['product_details']
    54.                             .   '</a>';
    55.         }
    56.        
    57.         $row++;
    58.        
    59. }
    60.  
    61.  
    62. // Loop through each row and build the table
    63. foreach($data as $key => $value) {
    64.    
    65.     $table->addRow( $data[$key], 'class="sectiontableentry'.$i.'"', 'td', true );
    66.     $i = $i == 1 ? 2 : 1;
    67. }
    68. // Display the table
    69. echo $table->toHtml();
    70. ?>
    71. <br class="clr" /><br />
    72. <?php echo $browsepage_footer ?>
    73. <?php
    74. // Show Featured Products
    75. if( $this->get_cfg( 'showFeatured', 1 )) {
    76.     /* featuredproducts(random, no_of_products,category_based) no_of_products 0 = all else numeric amount
    77.     edit featuredproduct.tpl.php to edit layout */
    78.     echo $ps_product->featuredProducts(true,10,true);
    79. } ?>
    80. <?php echo $recent_products ?>
    уважаемый woojin помогите добить этот вопрос [!]
     
  8. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    по моему вот это тот класс который тебе нужен
    попробуй пропиши его прямо в этом файле и внеси в него все необходимые данные по границам ячее и посмотри чего получится

    а ещё в дополнении к firebug есть отличное сочетание клавиш CTRL+U чтобы посмотреть исходный код страницы, там и будет видно какой класс используется если он вообще используется
     
    Expertseo нравится это.
  9. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    прописать прямо в этом файле я не знаю как и что, если подскажете будет просто отлично ! :) нашел с помощью firebug, стили прописаны в файле template_css.css,
    Код (PHP):
    1. .sectiontableentry1 {
    2.     font-size:12px;
    3.     padding:7px;
    4.     background:none;
    5.     color:#333333;
    6. }
    7.  
    8. .sectiontableentry2 {
    9.     background:#EFEDED;
    10.     font-size:12px;
    11.     padding:7px;
    12.     color:#333333;
    13. }


    какие свойства прописать чтобы таблица нужная получилась ? может border-bottom-color: ? я на верном пути к решению ?
     
  10. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    border-left: 1px solid #000;
    border-right: 1px solid #000;

    вроде так
     
  11. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    прописал border-left: 1px solid #000;
    border-right: 1px solid #000; эффекта нет никакого =O, ответ то где то уже почти рядом !%)

    вот здесь я эксперементирую kindershop.me/index.php?page=shop.browse&category_id=3&option=com_virtuemart&Itemid=1&vmcchk=1&Itemid=1
     
  12. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    покажи исходный код страницы CTRL+U
    но только то место где у тебя сама таблица

    и ещё попробуй в файле browse_listtable.tpl.php напиши чтобы у тебя какой нибудь левый текст выводился, тогда будет точно понятно что это именно тот файл который тебе нужен
    а то может быть не в том месте копаем, может быть тебе нужен browse_layouttable.tpl.php
     
  13. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    ничего так и не смог добиться все что угодно получалось только не черная рамка...:( может проще все таки в browse_listtable.tpl.php прописать этот нужный класс ? есть минутка на помощь ?
     
  14. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    не совсем точно понимаю как писать текст и в каком месте browse_layouttable.tpl.php ?
     
    Последнее редактирование: 26.10.2010
  15. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    Вот она вроде таблица
    Код (PHP):
    1. <table width="100%">
    2.  
    3.     <tr class="sectiontableheader">
    4.         <th>Название</th>
    5.         <th>Артикул</th>
    6.         <th>Цена</th>
    7.         <th>Маленькая картинка</th>
    8.         <th>Описание</th>
    9.  
    10.         <th>Обновить</th>
    11.     </tr>
    12.     <tr class="sectiontableentry1">
    13.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=2&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Ladder">Ladder</a></td>
    14.         <td>G02</td>
    15.         <td>
    16. <a href="/index.php?page=shop.ask&amp;product_id=2&amp;subject=%D0%9F%D0%BE%D0%B7%D0%B2%D0%BE%D0%BD%D0%B8%D1%82%D0%B5%2C+%D1%87%D1%82%D0%BE%D0%B1%D1%8B+%D1%83%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D1%82%D1%8C+%D1%86%D0%B5%D0%BD%D1%83%3A+Ladder&amp;option=com_virtuemart&amp;Itemid=1">Позвоните, чтобы уточнить цену</a>
    17.  
    18.  
    19. </td>
    20.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=2&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Ladder"><img src="http://kindershop.me/components/com_virtuemart/show_image_in_imgtag.php?filename=ffd5d5ace2840232c8c32de59553cd8d.jpg&amp;newxsize=120&amp;newysize=120&amp;fileout=" alt=""00  border="0" /></a></td>
    21.         <td>A really long ladder to reach high places.</td>
    22.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=2&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Ladder">Подробнее</a></td>
    23.     </tr>
    24.     <tr class="sectiontableentry2">
    25.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=3&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Автомат водный 12000">Автомат водный 12000</a></td>
    26.  
    27.         <td>12000</td>
    28.         <td>
    29.  
    30.     <span class="productPrice">
    31.         104.26 Руб           </span>
    32.  
    33.  
    34. </td>
    35.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=3&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Автомат водный 12000"><img src="http://kindershop.me/components/com_virtuemart/themes/s5_shopper_frenzy/images/noimage.gif" alt=""00  border="0" /></a></td>
    36.         <td>&nbsp;</td>
    37.  
    38.         <td>
    39. <form action="http://kindershop.me/index.php" method="post" name="addtocart" id="addtocart95_2" class="addtocart_form" onsubmit="handleAddToCart( this.id );return false;">
    40.     <label for="quantity3" class="quantity_box">Количество:&nbsp;</label><input type="text" class="inputboxquantity" size="4" id="quantity3" name="quantity[]" value="1" />
    41.         <input type="button" class="quantity_box_button quantity_box_button_up" onclick="var qty_el = document.getElementById('quantity3'); var qty = qty_el.value; if( !isNaN( qty )) qty_el.value++;return false;" />
    42.         <input type="button" class="quantity_box_button quantity_box_button_down" onclick="var qty_el = document.getElementById('quantity3'); var qty = qty_el.value; if( !isNaN( qty ) &amp;&amp; qty > 0 ) qty_el.value--;return false;" />
    43.         <br />
    44.     <input type="submit" class="addtocart_button" value="Купить" title="Купить" />
    45.     <input type="hidden" name="category_id" value="3" />
    46.     <input type="hidden" name="product_id" value="3" />
    47.  
    48.     <input type="hidden" name="prod_id[]" value="3" />
    49.     <input type="hidden" name="page" value="shop.cart" />
    50.     <input type="hidden" name="func" value="cartadd" />
    51.     <input type="hidden" name="Itemid" value="1" />
    52.     <input type="hidden" name="option" value="com_virtuemart" />
    53.     <input type="hidden" name="set_price[]" value="" />
    54.     <input type="hidden" name="adjust_price[]" value="" />
    55.     <input type="hidden" name="master_product[]" value="" />
    56. </form></td>
    57.  
    58.     </tr>
    59.     <tr class="sectiontableentry1">
    60.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=4&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Автомат водный 13000">Автомат водный 13000</a></td>
    61.         <td>13000</td>
    62.         <td>
    63.  
    64.     <span class="productPrice">
    65.         107.56 Руб           </span>
    66.  
    67.  
    68. </td>
    69.         <td><a href="/index.php?page=shop.product_details&amp;flypage=flypage.tpl&amp;product_id=4&amp;category_id=3&amp;option=com_virtuemart&amp;Itemid=1" title="Автомат водный 13000"><img src="http://kindershop.me/components/com_virtuemart/themes/s5_shopper_frenzy/images/noimage.gif" alt=""00  border="0" /></a></td>
    70.         <td>&nbsp;</td>
    71.         <td>
    72. <form action="http://kindershop.me/index.php" method="post" name="addtocart" id="addtocart98_3" class="addtocart_form" onsubmit="handleAddToCart( this.id );return false;">
    73.     <label for="quantity4" class="quantity_box">Количество:&nbsp;</label><input type="text" class="inputboxquantity" size="4" id="quantity4" name="quantity[]" value="1" />
    74.         <input type="button" class="quantity_box_button quantity_box_button_up" onclick="var qty_el = document.getElementById('quantity4'); var qty = qty_el.value; if( !isNaN( qty )) qty_el.value++;return false;" />
    75.         <input type="button" class="quantity_box_button quantity_box_button_down" onclick="var qty_el = document.getElementById('quantity4'); var qty = qty_el.value; if( !isNaN( qty ) &amp;&amp; qty > 0 ) qty_el.value--;return false;" />
    76.  
    77.         <br />
    78.     <input type="submit" class="addtocart_button" value="Купить" title="Купить" />
    79.     <input type="hidden" name="category_id" value="3" />
    80.     <input type="hidden" name="product_id" value="4" />
    81.     <input type="hidden" name="prod_id[]" value="4" />
    82.     <input type="hidden" name="page" value="shop.cart" />
    83.     <input type="hidden" name="func" value="cartadd" />
    84.     <input type="hidden" name="Itemid" value="1" />
    85.     <input type="hidden" name="option" value="com_virtuemart" />
    86.  
    87.     <input type="hidden" name="set_price[]" value="" />
    88.     <input type="hidden" name="adjust_price[]" value="" />
    89.     <input type="hidden" name="master_product[]" value="" />
    90. </form></td>
    91.     </tr>
    92. </table>
     
  16. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    Показал таблицу
     
  17. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    Вот код browse_layouttable.tpl.php если нужен он то где здесь копать ?
    Код (PHP):
    1. <?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
    2. mm_showMyFileName(__FILE__); ?>
    3.  
    4. <?php echo $buttons_header // The PDF, Email and Print buttons ?>
    5. <?php echo $browsepage_header // The heading, the category description ?>
    6. <?php echo $parameter_form // The Parameter search form ?>
    7. <?php echo $orderby_form // The sort-by, order-by form PLUS top page navigation ?>
    8.  
    9. <?php
    10. $data =array(); // Holds the rows of products
    11. $i = 1; $row = 0; // Counters
    12. foreach( $products as $product ) {
    13.        
    14.         foreach( $product as $attr => $val ) {
    15.             // Using this we make all the variables available in the template
    16.             // translated example: $this->set( 'product_name', $product_name );
    17.             $this->set( $attr, $val );
    18.         }
    19.        
    20.         // Parse the product template (usually 'browse_x') for each product
    21.         // and store it in our $data array
    22.         $data[$row][] = $this->fetch( 'browse/'.$templatefile .'.php' );
    23.        
    24.         // Start a new row ?
    25.         if ( ($i % $products_per_row) == 0) {
    26.             $row++;
    27.         }
    28.         $i++;
    29.        
    30. }
    31. // Creates a new HTML_Table object that will help us
    32. // to build a table holding all the products
    33. $table =& new HTML_Table('width="100%"');
    34.  
    35. // Loop through each row and build the table
    36. foreach($data as $key => $value ) {
    37.     $table->addRow($data[$key] );
    38. }
    39. // Display the table
    40. echo $table->toHtml();
    41. ?>
    42. <br class="clr" />
    43. <?php echo $browsepage_footer ?>
    44. <?php
    45. // Show Featured Products
    46. if( $this->get_cfg( 'showFeatured', 1 )) {
    47.     /* featuredproducts(random, no_of_products,category_based) no_of_products 0 = all else numeric amount
    48.     edit featuredproduct.tpl.php to edit layout */
    49.     echo $ps_product->featuredProducts(true,10,true);
    50. } ?>
    51. <?php echo $recent_products ?>
     
  18. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    надо создать два одинаковых по содержимому класса в CSS sectiontableentry1 и sectiontableentry2

    а вот это место
    создаёт новый объект таблицы, тебе надо найти класс HTML_Table и изменить внутри него то что тебе надо, где он находится я незнаю, но он точно в каком то из файлов VM и скорее всего в админке

    но лучше воспользоваться CSS'ом
     
  19. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    Ок ! буду копать! спасибо за подсказку ! [!]
     
  20. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    вообщем почти разобрался с данным вопросом !
    в tamlate.css прописал border: 1px solid

    Код (PHP):
    1. tr.sectiontableentry1 td  {
    2.     border: 1px solid #2A5FFF;
    3.     padding: 5px; }
    4.  
    5. tr.sectiontableentry2 td  {
    6.     border: 1px solid #2A5FFF;
    7.     padding: 5px; }


    Получил следующее ....
    [​IMG][/URL][/IMG]

    теперь немогу найти где прописать cellspacing="0" для ликвидации отступа между ячейками

    Если пишу напрямую в исходный код через firebug, то получается вот следующее...
    [​IMG][/URL][/IMG]
     
    Последнее редактирование: 28.10.2010
  21. Offline

    Expertseo Недавно здесь

    Регистрация:
    26.10.2010
    Сообщения:
    16
    Симпатии:
    0
    Пол:
    Мужской
    вроде добился нужного мне еффекта ! :) в файле browse_listtable.tpl.php прописал свойство cellspacing="0"

    $table =& new HTML_Table('width="100%" cellspacing="0" ');
     

Поделиться этой страницей

Загрузка...