Тоже возникла проблема со скоростью работы, страницы грузились по 4-5 секунд.
Пользую опенкарт 1,5,1,3, стандартный шаблон. Сайт подарков с большим количеством категорий, точнее в первом уровне около 100, плюс по 2 подкатегории в каждой. Товаров около 1000. Предполагается еще рост, потому такая скорость работы совсем не устраивала.
Перечитал кучу веток ваших, пробовал отключать vqmod, подключать драйвер мускула, отключать чпу - все фигня, максимум на 3 секунды выходил. Профилированием не занимался, ибо сайт на виртуальном хостинге уже и менять настройки мускула для вычисления медленных запросов нет возможности. Мемкеш тоже не подключал, ибо, как я понял, это какая-то отдельная вещь, которую нужно устанавливать на сервер, а сервера у меня нету (только виртуальный хостинг), потому этот вариант тоже не делал.
Начал дальше экспериментировать, отключил вывод категорий в сайдбаре (тот, что через модуль). И, о чудо - 0,3 секунды на загрузку. Это, конечно, отлично, но отказываться от вывода категорий в сайдбаре я не хочу. В этой ветке вначале прочитал обмолвку Yesvik по поводу "отключи подсчет товаров в категориях". Инструкции не было, пошел рыть сам.
Сделал:
в файле catalog/controller/module/category.php
закомментировал дважды
//$product_total = $this->model_catalog_product->getTotalProducts($data);
и
'name' => $category['name'] /*. ' (' . $product_total . ')'*/,
Это для отключения подсчета в сайдбаре.В файле catalog/contoller/common/header.php
закомментировал следующим образом
// $product_total = $this->model_catalog_product->getTotalProducts($data);
/* $children_data[] = array(
'name' => $child['name'] . ' (' . $product_total . ')',
'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
);
*/
(Можно было бы xml под vqmod написать (хотя её наверняка уже кто-то где-то написал), но лень возится. Если кто-то напишет - буду благодарен.)
Результат - страница со всей сотней категорий в сайдбаре, но без количества товаров выводится за 1 сек. Уже намного приятней. Но 0,3 сек теперь не дает мне покоя, а начитавшись про кеширование я понимаю, что можно этот список категорий (да и подсчитаное количество товаров в категории) теоретически закешировать, и на них времени тратиться практически не будет.
Взываю о помощи - дайте хоть наводку как это сделать с учетом того, что своего сервера нет и мемкеш я установить не могу на него (хотя возможно я не правильно понял как этот мемкеш работает).
Заранее благодарю.