Вывод краткого описания товара на странице категории

Судя по комментариям к предыдущей статье, в которой мы рассматривали создание краткого описания товара в Opencart 3, я понял, что некоторым из вас хотелось бы научиться выводить полученное описание не только на странице продукта, но и на странице категорий. Что ж, тогда вперед!

Статья, в которой мы создавали краткое описания для товара, находится тут.

Выводим краткое описание на странице категорий

В прошлой статье мы успешно реализовали краткое описания товара. Для этого мы добавили новое значение в таблицу базы данных, внесли необходимые изменения в контроллер, модель и шаблон.

В результате работы мы получили возможность выводить новое описание на странице товара. Сегодня мы выведем это же описание для каждого товара, но уже на странице категорий.

Редактируем контроллер

В «catalog/controller/product/category.php» находим массив $data['products'][] = array( и под description, по аналогии, вставляем short_description,:

  'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..',
  'short_description' => utf8_substr(trim(strip_tags(html_entity_decode($result['short_description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..',

Добавляем вывод краткого описания в шаблон страницы

Теперь выведем описание товара на странице категории. Для этого перейдем в «catalog/view/theme/ВАША ТЕМА/product/category.twig», найдем цикл {% for product in products %}, который выводит товары, и в внутри него разместим краткое описание.

Я добавил его прямо под названием товара. В дефолтной теме это выглядит так:

  <h4><a href="{{ product.href }}">{{ product.name }}</a></h4>
  <div class="short_description">{{ product.short_description }}</div>

Результат

Теперь на странице категорий у товара будет выводиться краткое описание: Краткое описание товара на странице категории

Надеюсь, данная информация оказалась для вас полезной. Удачи!