Студенческий блог

Opencart 2.x скрыть товары, которых нет в наличии

Просмотров: 1275Комментарии: 0
Интернет
Ограничения: Решение будет работоспособно только в случае стандартного вывода товаров категории(с помощью шаблона /template/product/category.tpl); При обновлении движка/темы решение перестанет работать. Внимание: создайте резервные копии изменяемых файлов, используйте нормальные текстовые редакторы, н-р notepad++.
1. в файле контроллера
/catalog/controller/product/category.php
1.1 перед
$data['products'][] = array(
добавить
if     ($result['quantity']<=0) {
 $in_stock = false;
} else {
 $in_stock = true;
}
1.2 после
'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] /*. $url*/),
добавить
'in_stock' => $in_stock
2. в файле шаблона
/catalog/view/theme/***/template/product/category.tmpl
где *** - название вашего шаблона 2.1 после
<?php foreach ($products as $product) { ?>
добавить
<?php if($product['in_stock']){?>
2.2 после закрытия
<?php foreach ($products as $product) { ?>
**код отображения одной(каждой) карточки товара**
<?php } ?>
добавить ещё одно
<?php } ?>
3. Обязательно проверить что закрываются необходимые скобки. Открывающая скобка {, закрывающая }