Сегодня столкнулся с вопросом вывода определенных атрибутов в карточке товара. Как вы знаете, OpenCart по умолчанию выводит в цикле все группы и все атрибуты в них.
Нам же нужно было вывести только определенные атрибуты. Так как некоторые использовались только в каталоге для фильтра. В общем то может быть много разных ситуаций зачем это понадобится. Не будем тянуть резину и приступим к действиям. И так, поехали.
1. Открываем файл контролер catalog/controller/product/product.php
Находим:
$data['products'][] = array(
После него вставляем:
'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
Визуально это получится примерно так:
2. Открываем файл контролер catalog/view/theme/ваша_тема/product/product.tpl
Находим (примерно 49-65 строка):
<table class="table table-bordered"> <?php foreach ($attribute_groups as $attribute_group) { ?> <thead> <tr> <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></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 foreach ($attribute_groups as $attribute_group) { ?> <?php foreach ($attribute_group['attribute'] as $attribute) { ?> <?php if(in_array($attribute['attribute_id'], array(12))) { ?> <?php echo $attribute['name']; ?> <?php echo $attribute['text']; ?> <?php }?> <?php }?> <?php }?>
Где цифра 12 это іd вашего атрибута. Можно выводить с нескольких, просто перечисляйте их через запятую (12,13,14,15).
Что бы узнать іd вашего атрибута, зайдите в админку. Каталог > Атрибуты >Атрибуты , найдите ваш атрибут и нажмите изменить. В конце строки браузера вы увидите цифру (attribute_id=12) . Эта цифра и есть id вашего атрибута.
Сохраняйте файлы, обязательно очистите кеш — Дополнения > Менеджер дополнений > Кнопка обновить.
Готово, вывод определенных атрибутов в карточке товара осуществлен. Лично тестировал на ocStore 2.1.0.1.1.
Запись OpenCart 2 — вывод определенных атрибутов в карточке товара впервые появилась Di-Grand блог о создании сайтов.
Свежие комментарии