Тормозит Opencart часть 4 (sitemap feed)

sitemap_banner

Тормозит Opencart часть 4 (sitemap feed)

В предыдущей статье мы вплотную подошли  к использованию кеширования. Одним из немаловажных моментов продвижения вашего сайта, будет регистрация в поисковых системах. Google и Yandex при регистрации просят дать им ссылку на xml feed  с картой ссылок вашего сайта.

В опенкарт есть встроенный модуль, который «из коробки» генерирует sitemap, но уже при 1000 товаров, генерация занимает секунд 15, а при 2000 очень часто магазин выпадает в ошибку либо по таймауту, либо из-за нехватки памяти для PHP.

Также стандартный Opencart Sitemap не содержит сссылку на главную страницу и формирует дубли на страницы товаров.

Почему это происходит ?

Во первых этот модуль использует стандартную модель генерации дерева категорий и стандартную модель получения списка товаров. При генерации дерева категорий, используется рекурсионный алгоритм, требующий больших ресурсов сервера, если у вас 200+ категорий, да еще и с большой вложенностью, сервер погибает под этим процессом. А при выборке всех товаров, стандартная модель, получает из базы огромный массив со всеми данными о товарах, но ведь нам для генерации Sitemap нужно только ссылка на товар и дата его изменения. Если мы перепишем запрос для получения из таблицы товаров, только ограниченного набора данных, а не полного, мы получим компактный массив данных, который легко будет обработан PHP. А если мы еще и закешируем эти данные, то повторная генерация Sitemap займет у нас всего доли секунды.

Специально для устранения этой проблемы для владельцев больших магазинов, нами был написан улучшенный модуль Sitemap PRO, который использует свою модель для получения списка товаров и построения списка категорий.

Скачать модуль можно на официальном сайте вот здесь

Или на сайте русского сообщества OpenCart.
Google Sitemap Pro Скачать

Предыдущие статьи из цикла тормозит Opencart:
1 часть
2 часть
3 часть

Хуйнаныр(4)Очко(1)

Запостить высер

Оставьте первый комментарий!

Стучать мне на мыло
avatar

wpDiscuz