Ефективна оптимізація XML sitemap в OpenCart 4.x дозволяє усунути помилки ліміту пам'яті PHP та прискорити індексацію великого каталогу товарів у Google. Стандартний модуль карти сайту в новій версії CMS намагається вивантажити всі URL в один документ, що викликає падіння скрипту при наявності понад 10 000 позицій.
Чому виникають падіння скрипту при вивантаженні карти сайту
Основна проблема полягає у вичерпанні оперативної пам'яті сервера (Allowed memory size exhausted). Під час запиту OpenCart 4.x вибирає з бази даних усі категорії, товари та виробників одночасно.
У файлі system/storage/logs/error.log з'являється відповідна критична помилка. Також це призводить до того, що пошукові боти отримують код відповіді 500 і припиняють обхід.

Лог помилок сервера OpenCart при вичерпанні оперативної пам'яті PHP
Генерація статичних файлів sitemap через CRON
Для каталогів обсягом від 15 000 товарів оптимальним рішенням є генерація статичних файлів sitemap за розкладом через CRON. Це знімає навантаження з веб-сервера під час візитів бота Googlebot.
Схема створення статичних файлів:
- Карта розділяється на декілька частин (наприклад, sitemap_products_1.xml по 5000 посилань).
- Формується один головний індексний файл sitemap.xml.
- Примусове збільшення memory_limit у php.ini до 512M лише тимчасово відстрочує проблему.

Приклад розділення великої карти сайту на окремі XML-файли
Очищення кешу та налаштування модифікаторів SEO
Після встановлення профільних OpenCart модулів для SEO обов'язково оновлюйте кеш системи.
Порядок кроків для скидання кешу:
- В панелі управління OpenCart 4.x перейдіть у розділ Панель стану.
- Відкрийте Налаштування розробника.
- Очистіть кеш шаблонів і SASS.
- Перевірте розширювачі у розділі Модифікатори, адже застарілі OCMOD-скрипти можуть блокувати роботу нових контролерів XML sitemap.

Очищення системного кешу та SASS у налаштуваннях розробника
Діагностика швидкості та перевірка результату
Для перевірки працездатності карти сайту відкрийте її у браузері та перевірте час відповіді сервера (через вкладку Network) — він не повинен перевищувати 1.5 секунди. Після цього відправте посилання на файл у Google Search Console.Перед внесенням змін у файл .htaccess чи конфігурацію бази даних завжди робіть резервну копію системи.
Правильно налаштована карта сайту знижує навантаження на MySQL, усуває типові OpenCart помилки та гарантує швидке потрапляння нових карток товарів у пошуковий індекс.
Схожі матеріали по темі