Задача такая:
На странице просмотра товаров категории в таблице выводится список товаров такого вида:
Шапка таблицы: Артикул |Наименование|Производитель|Цена
Картинка в прицепе.
и соответственно по столбцам должны выводится данные для каждого товара.
Проблема возникла со столбцом "Производитель"
Что я делаю:
Лезу в файл browse_listtable.tpl.php
1. Делаю заголовок столбца, добавляю строчку в нужном месте
$tableheader[] = $VM_LANG->_('PHPSHOP_MANUF');
и прописываю его в языковом фале - заголовок столбца готов.
2. Обращаюсь к таблице SQL чтобы вывести производителя для каждого товара.
Данные о производителе хранятся в таблице
manufacturer в поле
mf_name.
В код добавляю такую строку:
$data[$row][] = $manufacturer['mf_name'];
Поле появилось, но производитель не отображается.
Поправьте меня, что сделал не так?
Связка J 1.5.9 + VM 1.1.2
Вот весь файл browse_listtable.tpl.php
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
mm_showMyFileName(__FILE__); ?>
<?php echo $buttons_header // The PDF, Email and Print buttons ?>
<?php echo $browsepage_header // The heading, the category description ?>
<?php echo $parameter_form // The Parameter search form ?>
<?php echo $orderby_form // The sort-by, order-by form PLUS top page navigation ?>
<?php
$data =array(); // Holds the rows of products
$i = 1; $row = 0; // Counters
// Table header
$tableheader[] = $VM_LANG->_('PHPSHOP_CART_SKU');
$tableheader[] = $VM_LANG->_('PHPSHOP_CART_NAME');
$tableheader[] = $VM_LANG->_('PHPSHOP_MANUF');
if( _SHOW_PRICES && $auth['show_prices'] ) {
$tableheader[] = $VM_LANG->_('PHPSHOP_CART_PRICE');
}
if( _SHOW_PRICES && $auth['show_prices'] && USE_AS_CATALOGUE != '1' ) {
$tableheader[] = $VM_LANG->_('PHPSHOP_CART_ACTION');
}
// Creates a new HTML_Table object that will help us
// to build a table holding all the products
$table =& new HTML_Table('width="100%"');
$table->addRow( $tableheader, 'class="sectiontableheader"', 'th', true );
foreach( $products as $product ) {
foreach( $product as $attr => $val ) {
// Using this we make all the variables available in the template
// translated example: $this->set( 'product_name', $product_name );
$this->set( $attr, $val );
}
$data[$row][] = $product['product_sku'];
$data[$row][] = $product['product_name'];
$data[$row][] = $manufacturer['mf_name'];
if( _SHOW_PRICES && $auth['show_prices'] ) {
$data[$row][] = $product['product_price'];
}
else {
$data[$row][] = '<a href="'.$product['product_flypage'].'" title="'.$product['product_name'].'">'
. $product['product_details']
. '</a>';
}
$row++;
}
// Loop through each row and build the table
foreach($data as $key => $value) {
$table->addRow( $data[$key], 'class="sectiontableentry'.$i.'"', 'td', true );
$i = $i == 1 ? 2 : 1;
}
// Display the table
echo $table->toHtml();
?>
<br class="clr" /><br />
<?php echo $browsepage_footer ?>
<?php
// Show Featured Products
if( $this->get_cfg( 'showFeatured', 1 )) {
/* featuredproducts(random, no_of_products,category_based) no_of_products 0 = all else numeric amount
edit featuredproduct.tpl.php to edit layout */
echo $ps_product->featuredProducts(true,10,true);
} ?>
<?php echo $recent_products ?>
[вложение удалено Администратором]