Почему WooCommerce замедляется
Обычный блог на WordPress может работать почти на любом хостинге. WooCommerce другой — каждая загрузка страницы многократно обращается к базе данных, сессию корзины нужно отслеживать для каждого посетителя, а страница оформления заказа не может кешироваться.
Когда WooCommerce работает медленно, это почти никогда не "просто хостинг". Обычно есть конкретное узкое место.
Сначала измерь, потом исправляй
Прежде чем что-то менять, измерь. Нужно знать, на что тратится время.
Используй GTmetrix или Google PageSpeed Insights, чтобы получить базовые показатели. Сосредоточься на:
- Time to First Byte (TTFB) — время ответа сервера. Более 600 мс означает проблемы на стороне сервера (хостинг, кеширование, PHP, база данных)
- Largest Contentful Paint (LCP) — когда появляется основной контент. Влияют изображения, скрипты, блокирующие рендеринг
- Total Blocking Time (TBT) — выполнение JavaScript. Влияет слишком много плагинов, которые загружают скрипты
Распространенное узкое место №1: Отсутствие кеширования страниц (или неправильное кеширование)
Страницы WooCommerce можно кешировать — с важными исключениями.
Нельзя кешировать:
- Страница корзины
- Страница оформления заказа
- Страница "Мой аккаунт"
- Любая страница с шорткодом WooCommerce, который меняется в зависимости от пользователя
Можно и нужно кешировать:
- Страница магазина
- Страницы категорий
- Страницы товаров
- Главная страница
Установи WP Rocket, W3 Total Cache или LiteSpeed Cache (если хостинг поддерживает). Убедись, что плагин настроен исключать страницы корзины, оформления заказа и аккаунта из кеширования.
Если ты на управляемом WooCommerce хостинге (например, Kinsta или WP Engine), они делают это автоматически на уровне сервера.
Распространенное узкое место №2: Неоптимизированные изображения
Изображения товаров обычно являются самым большим убийцей производительности. WooCommerce создает несколько размеров изображений для каждого товара — миниатюры, изображения для каталога, отдельные изображения товаров — и если оригиналы огромные, они остаются такими.
Исправление:
- Установи ShortPixel или Imagify — сожми все существующие изображения автоматически
- Установи разумные размеры изображений в WooCommerce → Настройки → Товары → Отображение
- Включи ленивую загрузку (WordPress делает это по умолчанию с версии 5.5)
- Используй формат WebP (большинство современных хостингов и CDN его поддерживают)
Распространенное узкое место №3: Слишком много плагинов, которые загружают скрипты везде
Каждый плагин добавляет собственные CSS и JavaScript. Многие плагины загружают эти файлы на каждой странице — даже там, где они не нужны.
Проверь, что загружается на твоей странице магазина: открой DevTools → Network → фильтр по JS/CSS. Ты можешь увидеть скрипты от плагинов контактных форм, слайдеров или SEO, которые загружаются на страницах товаров, где они бесполезны.
Исправление с помощью Asset CleanUp или оптимизации ресурсов в WP Rocket — укажи каждому плагину загружаться только на страницах, где он реально используется.
Распространенное узкое место №4: Медленные запросы к базе данных
WooCommerce хранит много данных: заказы, метаданные товаров, данные клиентов, сессии. Со временем база данных растет, а запросы замедляются.
Быстрые исправления:
-- Очистить просроченные сессии (выполнить в phpMyAdmin или через WP-CLI)
DELETE FROM wp_woocommerce_sessions WHERE session_expiry < UNIX_TIMESTAMP();
-- Удалить старые транзиенты
DELETE FROM wp_options WHERE option_name LIKE '_transient_%' AND autoload = 'yes';
Или используй плагин вроде WP-Optimize, чтобы очищать это через интерфейс.
Также: убедись, что твой хостинг использует MySQL 8+ и что сервер имеет достаточно оперативной памяти для хранения таблиц в памяти.
Распространенное узкое место №5: Общий хостинг под нагрузкой
Общий хостинг размещает сотни сайтов на одном сервере. Если соседний сайт получает всплески трафика, твой замедляется.
Признаки того, что общий хостинг уже не подходит:
- TTFB постоянно превышает 1 секунду, даже с кешированием
- Утром производительность нормальная, а вечером ужасная
- У тебя 500+ товаров или 100+ заказов в день
Переход на VPS или управляемый WooCommerce хостинг (Kinsta, Cloudways, WP Engine) дает кардинальное улучшение. Ожидай цену $25–80/месяц вместо $5–15.
Распространенное узкое место №6: Не включен HPOS WooCommerce
Начиная с WooCommerce 7.1, появилась новая система "High-Performance Order Storage" (HPOS), которая хранит заказы в собственных таблицах вместо post meta. Это значительно быстрее для магазинов с большим количеством заказов.
Включи её в WooCommerce → Настройки → Расширенные → Функции → Хранение данных заказов.
Сначала проверь совместимость со своими плагинами — большинство основных уже поддерживают это.
Краткий контрольный список для аудита
- Кеширование страниц включено, корзина/оформление исключено
- Изображения сжаты и имеют ленивую загрузку
- TTFB меньше 400 мс (проверь на GTmetrix)
- Ненужные плагины деактивированы и удалены
- Сессии и транзиенты WooCommerce очищены
- HPOS включен (если WooCommerce 7.1+)
- PHP 8.1 или 8.2 (значительное ускорение по сравнению с 7.4)
Когда обращаться за помощью
Если ты сделал всё вышеуказанное, а производительность всё ещё плохая, проблема обычно либо в конкретном медленном запросе к базе данных, либо в плагине с плохим кодом. Если вы попробовали все шаги, но не получили желаемого результата, или не хотите заниматься этим самостоятельно — команда DevCev Digital может провести детальный аудит и оптимизацию вашего магазина.