Как добавить дополнительные поля в OpenCart
29 Мая 2022г. в 04:33Итак, в этой статье мы с вами поговорим о том, как добавить дополнительные поля для товара. По большому счету полей для товара итак достаточно и в большинстве случаев вам их хватит с лихвой. Здесь есть вся основная информация о товаре: наименование, цена, описание, модель, производитель, категория товара и другие.
Однако, возможно этого будет мало, и вы захотите вывести что-то еще, например, страну производителя, материал и т.п. Для реализации задуманного в идеале нужен модуль, который можно достаточно легко написать самостоятельно, либо же можно поискать готовый в сети. Но, если нужно быстро, тогда можно воспользоваться полями, которые есть в Опенкарте, но нигде по сути не используются. Вот эти поля:
Почему бы эти самые поля для разных кодов товара не использовать для достижения цели? Как-то так:
Теперь новые данные полей необходимо получить в контроллере, чтобы они стали доступны в шаблоне. Откроем контроллер catalog\controller\product\product.php и перед подключением вида добавим пару строк, получающих нужные данные:
$data['upc'] = $product_info['upc'];
$data['ean'] = $product_info['ean'];
1
2
$data['upc'] = $product_info['upc'];
$data['ean'] = $product_info['ean'];
Осталось переменные $upc и $ean использовать в нужном месте шаблона theme\ваша_тема\template\product\product.tpl:
<?php if($upc): ?>
<li>Страна производителя: <?= $upc ?></li>
<?php endif; ?>
<?php if($ean): ?>
<li>Материал: <?= $ean ?></li>
<?php endif; ?>
1
2
3
4
5
6
<?php if($upc): ?>
<li>Страна производителя: <?= $upc ?></li>
<?php endif; ?>
<?php if($ean): ?>
<li>Материал: <?= $ean ?></li>
<?php endif; ?>
Попробуем обновить страницу товара (возможно, придется почистить кэш дополнений, меню Дополнения – Менеджер дополнений).