Opencart 3 - отображать раздел <div>, если товар связан с определенной категорией

Я пытаюсь отобразить раздел div над изображением всех продуктов, если продукт связан с определенной категорией.

в файле category.twig я добавил следующий код

... <div class="product-thumb row">
        <div class="image"> 
<div class="freeship"><i class="fa fa-truck"></i> Free Shipping</div>...

Я уверен, что мне нужно сделать, чтобы отображать div.freeship только для продуктов, принадлежащих к категории с идентификатором 5.

Любая помощь оценена!

Какая конкретная версия в Opencart 3?

Madhur Bhaiya 13.09.2018 20:37
0
1
190
1

Ответы 1

В файле контроллера category.phpнайти:

$data['products'][] = array(

Заменять это с:

$freeship = false;
$product_categories = $this->model_catalog_product->getCategories($result['product_id']);
foreach ($product_categories as $product_category) {
    if ($product_category['category_id'] == 5) {
        $freeship = true;
        break;
    }
}
$data['products'][] = array(
    'freeship' => $freeship,

И в вашем файле просмотра category.twig используйте его:

{% if product.freeship %}<div class="freeship"><i class="fa fa-truck"></i> Free Shipping</div>{% endif %}

Затем обновите свои модификации и кеш темы.

Спасибо, DigiCart. Будет ли это работать и на странице продукта?

Joe 14.09.2018 03:13

Нет, это для страницы категории. но вы можете использовать его на других страницах с некоторыми изменениями.

DigitCart 14.09.2018 07:13

Мне удалось это сделать на специальных страницах, поиске и производителях. но не для продуктов и рекомендуемых модулей, нужно ли вносить слишком много изменений?

Joe 15.09.2018 02:54

Другие вопросы по теме