Медленный WooCommerce с множеством товаров: хостинг, кэш и база данных
Практическое руководство для магазинов WooCommerce с тысячами товаров: правильный хостинг, послойный кэш и чистая база данных.
Вы добавляли товары год за годом, и теперь магазин еле ползёт. Страницы категорий грузятся несколько долгих секунд, админка зависает при каждом сохранении, а клиенты уходят, не дойдя до корзины. Это не ваша вина и не вина WordPress: WooCommerce — мощный движок, но с тысячами товаров его нужно правильно кормить.
Хорошая новость в том, что большинство проблем со скоростью идёт из трёх конкретных мест: хостинг, способ кэширования и состояние базы данных. Переделывать магазин не нужно. Нужно понять, что замедляет каждый запрос, и лечить причину, а не симптом. Ниже я покажу, куда именно смотреть и что чинить, в порядке важности.
Почему WooCommerce замедляется с ростом каталога
Магазин с несколькими десятками товаров и магазин с тысячами работают на одном коде, но нагружают сервер совершенно по-разному. Каждая страница категории запускает тяжёлые запросы: фильтры, атрибуты, вариации, остатки, цены. С большим числом товаров и вариаций эти запросы становятся медленными.
Типичная проблема — не одна причина, а цепочка:
- запросы к базе, которые сканируют слишком много строк
- отсутствие кэша, поэтому каждый посетитель повторяет одну и ту же работу
- дешёвый общий хостинг, режущий ресурсы именно тогда, когда они нужны
- плагины, добавляющие код на каждую страницу
Прежде чем что-то покупать или ставить новый плагин, измерьте. Инструменты браузера (вкладка Network) и плагин вроде Query Monitor показывают, какой запрос тормозит и почему. Без измерений вы оптимизируете вслепую.
Хостинг: где всё выигрывается или теряется
Для большого каталога хостинг важнее любой темы или плагина. Дешёвый общий хостинг размещает сотни сайтов на одном сервере; когда один нагружается, страдают все.
Что искать для серьёзного магазина:
- свежую версию PHP (актуальные версии заметно быстрее старых)
- достаточно памяти PHP, чтобы админка WooCommerce не задыхалась
- сервер базы данных, не перегруженный другими клиентами
- желательно хостинг под WordPress с кэшем на уровне сервера
Если вы на общем хостинге и админка тормозит при каждом сохранении товара — явный признак, что вы переросли тариф. Управляемый VPS или выделенный WordPress-хостинг часто решает половину проблем, не трогая код. Не нужен самый дорогой тариф, нужен тот, который не крадёт ваши ресурсы на пике трафика.
Послойный кэш: это не одна кнопка
Многие ставят плагин кэша, оставляют настройки по умолчанию и удивляются, что почти ничего не изменилось. Хороший кэш строится слоями, у каждого своя роль.
- Кэш страниц: публичные страницы (категории, товары, блог) отдаются готовыми, без прохода через PHP при каждом визите.
- Объектный кэш (Redis): результаты повторяющихся запросов хранятся в памяти. Для WooCommerce с большим каталогом это даёт огромную разницу.
- Кэш браузера: статические файлы (изображения, CSS, JS) остаются у посетителя, и вторая страница летит.
- CDN: отдаёт изображения и скрипты с серверов рядом с клиентом.
Внимание к тому, что НЕ кэшируется: корзина, оформление заказа и аккаунт должны оставаться динамическими. Плохо настроенный кэш показывает неверные цены или остатки. Исключение этих страниц обязательно.
База данных: чистка, которая чувствуется сразу
Со временем база WooCommerce накапливает мусор: ревизии товаров, старые заказы, брошенные корзины, данные удалённых плагинов, просроченные транзиенты. Всё это раздувает таблицы и замедляет запросы.
Что делать, по порядку:
- Сначала сделайте полный бэкап. Ничего из перечисленного не трогает данные без резервной копии.
- Очистите ревизии и просроченные транзиенты.
- Удалите старые сессии и брошенные корзины.
- Оптимизируйте таблицы (особенно крупные, вроде wp_options и таблиц WooCommerce).
Две технические вещи, которые сильно помогают: в таблице wp_options есть опции с меткой "autoload", которые грузятся при КАЖДОМ запросе; если плагин её переполнил — почистите. И свежий WooCommerce умеет хранить заказы в отдельном хранилище (HPOS), намного быстрее старой структуры. Если магазин старый, переход на HPOS стоит рассмотреть.
Правильный порядок и когда звать специалиста
Не делайте всё сразу, иначе не поймёте, что помогло. Практический порядок:
1. Измерьте текущее состояние (скорость, медленные запросы).
2. Проверьте хостинг и тариф; поднимите, если он душит.
3. Почистите базу, сделав бэкап заранее.
4. Настройте послойный кэш с правильными исключениями.
5. Измерьте снова и сравните.
Если после этого всё равно медленно, проблема обычно глубже: тяжёлая тема, плохо написанный плагин или самописные запросы без индексов. Здесь окупается опытный взгляд со стороны.
В MPO Web Studio мы делаем именно такой аудит, удалённо, по всей стране. Честно скажем, дело в настройке или в переезде на другой хостинг, с прозрачными ценами и без обещаний "гарантируем первое место". Если хотите взгляд на ваш магазин, напишите нам в WhatsApp — разберёмся вместе.
Частые вопросы
Сколько товаров считается "много" для WooCommerce?+
Волшебного порога нет. Магазин может отлично работать с тысячами простых товаров на хорошем хостинге и тормозить с гораздо меньшим числом, если много вариаций и тяжёлых фильтров. Важна комбинация товары x вариации x атрибуты плюс качество хостинга. Практическое правило: если админка тормозит при сохранении, вы что-то переросли.
Решит ли плагин кэша проблему сам по себе?+
Полностью — редко. Он сильно помогает публичным страницам, но не исправит слабый хостинг, раздутую базу или медленные запросы корзины и оформления, которые не кэшируются. Кэш — лишь один слой из набора. Без приличного хостинга и чистой базы результаты скромные.
Опасно ли чистить базу данных?+
Может быть опасно, если работать без бэкапа. Ошибочное удаление таблиц или опций способно сломать магазин. Поэтому правило простое: сначала полный бэкап, потом чистка, потом проверка, что всё работает. С бэкапом под рукой риск мал, а прирост скорости реален.
Что такое HPOS и стоит ли переходить?+
HPOS (High-Performance Order Storage) — современный способ хранения заказов в WooCommerce, в отдельных таблицах, быстрее для магазинов с большим числом заказов. Для крупного каталога с богатой историей обычно стоит. Сначала проверьте совместимость плагинов и делайте миграцию с бэкапом.
Могу ли я всё сделать сам или нужен специалист?+
Базовые шаги (бэкап, чистка, кэш, проверка тарифа хостинга) реально сделать самому, если есть терпение. Если после них всё равно медленно или страшно сломать магазин с активными заказами, помощь сэкономит время и нервы. Удалённый аудит быстро покажет, где узкое место.
7 ошибок, которые отпугивают клиентов с вашего сайта
Оставьте email и получите гид прямо здесь, сразу. Без спама.
Хотите увидеть, как мог бы выглядеть сайт вашего бизнеса?
Напишите нам в WhatsApp — и мы бесплатно подготовим демо-сайт с названием вашего бизнеса. Сначала смотрите, потом решаете — без обязательств.