У меня вопрос как реализовать вывод атрибутов под одному чтобы разместить их в моей таблице. Есть пример код для вывода в категориях всех атрибутов, то бишь как я понимаю нужно его переделать для вывода 1 атрибута по его ИД. catalog\controller\product\category.php, 199 PHP: 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..', 'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']), 'price' => $price, catalog\view\theme\default\template\product\category.tpl, 76 HTML: <div class="description"> <?php if($product['attribute_groups']) { ?> <table> <?php foreach($product['attribute_groups'] as $attribute_group) { ?> <thead><!--названия групп--> <tr> <td colspan="2"><?php echo $attribute_group['name']; ?></td> </tr> </thead><!----> <tbody> <?php foreach($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> </tbody> <?php } ?> </table> <?php } ?> </div>
Вместо Код: <?php foreach($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> Попробуйте это Код: <?php foreach($attribute_group['attribute'] as $attribute) { if ($attribute['atribute_id']==ПЕРМЕННАЯ_ГДЕ_ХАРНИТСЯ_НЕОБХОДИМЫЙ_ВАМ_ИД) { ?> <td><?php echo $attribute['text']; ?></td> <?php break; } } ?>
Вставляю ваш код сталкиваюсь с ошибкой , а править каталог.пхп не нужно? Notice: Undefined variable: attribute_group i */product/category.tpl on line 119Warning: Invalid argument supplied for foreach() in /home/u938108026/public_html/catalog/view/theme/bigshop/template/product/category.tpl on line 119
Ну во-первых не нужно же так дословно воспринимать - я же просто как пример показал, ну а вписать в контекст нужно уже как-то самому ... Но и не в этом дело - Вы что-то зацепили, т.к. начало ругаться на отсутствие переменной $attribute_group, чего совсем не должно быть. Очевидно, что Вы зацепили: Код: <?php foreach($product['attribute_groups'] as $attribute_group) { ?> Я обратил внимание, что код вы приводили из дефолтного шаблона, а ошибка на шаблоне BigShop ...
Вместо Код: <?php foreach($attribute_group['attribute'] as $attribute) { ?> <tr> <td><?php echo $attribute['name']; ?></td> <td><?php echo $attribute['text']; ?></td> </tr> <?php } ?> Попробуйте это Код: <tr> <td><?php echo $attribute_group['attribute'][0]['name']; ?></td> <td><?php echo$attribute_group['attribute'][0]['text']; ?></td> </tr> Для Атр-2 (согласно табличной разметке, а то в цсс я постольку поскольку...) Код: <tr> <td><?php echo $attribute_group['attribute'][1]['name']; ?></td> <td><?php echo$attribute_group['attribute'][1]['text']; ?></td> </tr>
Большое вам спасибо, сделал как вы написали получилось так, осталось убрать название и само слово характеристики! Я очень вам благодарен!!