2.13.4.20. Отключение подсчёта товаров в категориях в OpenCart
Стандартный функционал OpenCart, выполняющий подсчёт товаров в категориях, слишком ресурсоёмкий и может вызывать огромные задержки в работе страниц и высокую нагрузку на сервер. Рекомендуется его отключать для сайтов. Процедура отключения зависит от используемой версии OpenCart:
- Откройте админ-панель сайта.
- Перейдите в раздел «Система → Настройки» («System → Settings»):
- Справа от названия магазина нажмите «Редактировать» («Edit»):
- На вкладке «Опции» («Options») напротив «Количество товаров в категории» выберите «Нет»:
- Сохраните изменения, нажав «Сохранить» («Save») в правом верхнем углу страницы:
- Проверьте работу сайта.
Если вы используете версию OpenCart 1.5.1 и ниже, отключать функцию подсчёта необходимо непосредственно в коде сайта. Для этого выполните следующее:
- Отредактируйте файл
catalog/controller/common/header.php
:- Примерно на 200-й строке найдите следующую строку и закомментируйте её, добавив в начале
//
:$product_total = $this->model_catalog_product->getTotalProducts($data);
- Найдите строку:
'name' => $child['name'] . ' (' . $product_total . ')',
И замените её на такую:
'name' => $child['name'],
- В конечном итоге у вас должно получится так:
//$product_total = $this->model_catalog_product->getTotalProducts($data); $children_data[] = array</b></br> 'name' => $child['name'],</b></br> 'href' => 'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . </b> </br> );
- Проверьте работу сайта.