Каталог на 50 тысяч записей тормозит не из-за WordPress, а из-за трёх типовых узких мест
Если карточки открываются медленно, сначала не меняйте тему и не ставьте ещё один плагин. Проверьте базу: у каталога часто тяжёлые запросы к метаполям, а не к самим записям. Индексы нужны там, где фильтруете и сортируете: по городу, рубрике, цене, статусу, дате обновления. Без них даже хороший сервер будет долго искать нужные строки.
Кэш решает только часть задачи. Полезно разделить: кэш страниц для витрины, кэш объектов для повторяющихся запросов и кэш результатов фильтров. Но если на главной каждый запрос строит новую выдачу, кэш быстро превращается в костыль. Для списка записей лучше заранее отдавать готовые блоки: популярные категории, последние добавления, статичные страницы рубрик.
Пагинация тоже влияет сильнее, чем кажется. Бесконечная лента и «покажи ещё» удобны визуально, но тяжёлые для SEO и памяти. Лучше: короткие страницы списка, ограничение глубины, фильтры без лишних пересборок и аккуратная сортировка. Если нужен поиск, не гоняйте его по всему каталогу без индексов — вынесите частые поля в отдельные, хорошо индексируемые колонки.
Скорость каталога обычно растёт не от одного «магического» решения, а от комбинации: меньше сложных фильтров в одном запросе, больше кэша, нормальные индексы и простая пагинация. Начните с логов медленных запросов и уберите самое тяжёлое — это почти всегда даёт лучший эффект, чем косметическая оптимизация.
Каталоги и доски объявлений на WP
@wp_directory_sites_ww
Каталог на 50 тысяч записей тормозит не из-за WordPress, а из-за трёх типовых узких мест
Этот пост опубликован в Telegram-канале Каталоги и доски объявлений на WP. Подписаться можно по ссылке: @wp_directory_sites_ww.