WooCommerce: как исправить проблему с неработающей навигацией по товарам

Диагностика проблемы с навигацией по товарам в WooCommerce

Навигация по товарам (страницы пагинации, сортировки, фильтры) — ключевой элемент удобства в интернет-магазине. Часто встречается ситуация, когда пагинация не работает: страницы с товарами либо не переключаются, либо приводят на 404 ошибку, либо отображают неверный набор товаров. Аналогично может сломаться сортировка или фильтры по атрибутам.

Основные причины:

  • Неправильные настройки постоянных ссылок (Permalinks);
  • Конфликты с темой или плагинами, изменяющими запросы WP_Query;
  • Ошибки в кастомном коде, переопределяющем запрос товаров;
  • Кэширование, которое не учитывает параметры пагинации или сортировки;
  • Отсутствие или некорректная работа хуков WooCommerce для пагинации.

Пошаговое решение: диагностика и исправление

1. Проверка постоянных ссылок

Перейдите в Консоль > Настройки > Постоянные ссылки и просто сохраните настройки заново без изменений. Это сбросит правила перезаписи (rewrite rules).

2. Отключение конфликтующих плагинов и смена темы

Временно переключитесь на стандартную тему, например Storefront, и отключите все плагины, кроме WooCommerce. Проверьте, работает ли пагинация. Если да — причина в конфликте.

3. Проверка кастомного кода, изменяющего запрос товаров

Если в functions.php или подключаемых плагинах есть фильтры на pre_get_posts или woocommerce_product_query, временно отключите их для проверки.

add_action('pre_get_posts', 'disable_custom_queries_for_test', 99); function disable_custom_queries_for_test($query) { if (!is_admin() && $query->is_main_query() && is_post_type_archive('product')) { remove_action('pre_get_posts', 'your_custom_query_function', 10); } }

4. Проверка кэширования

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

5. Правильное использование функций пагинации

Убедитесь, что в шаблоне магазина вызывается стандартный код пагинации WooCommerce:

if ( function_exists('woocommerce_pagination') ) { woocommerce_pagination(); }

Если пагинация реализована вручную, используйте:

the_posts_pagination(array( 'mid_size' => 2 ));

Проверка результата после внедрения

  • Перейдите на страницу магазина или категории с товарами.
  • Попробуйте перейти на другие страницы пагинации, используя ссылки внизу.
  • Проверьте, что URL меняется корректно (например, /product/page/2/).
  • Убедитесь, что на каждой странице отображаются разные товары без повторов.
  • Проверьте сортировку и фильтры, если они есть, на корректность работы.

Частые ошибки и как их исправить

  • 404 ошибка при переходе на вторую и последующие страницы пагинации: Обычно вызвана некорректными правилами перезаписи. Решение — сбросить постоянные ссылки через настройки.
  • Пагинация есть, но при переходе на другие страницы отображаются те же товары: Возможно, кастомный фильтр запросов не учитывает параметр paged. Проверьте и исправьте логику в pre_get_posts.
  • Пагинация не показывается вообще: Убедитесь, что в теме вызвана функция woocommerce_pagination() или аналогичная.
  • Кэширование возвращает старые страницы: Проверьте ключи кэша, исключите пагинацию из агрегации кеша.

Практические советы по производительности и безопасности

  • Используйте серверное кэширование с учётом параметров пагинации и сортировки — например, плагин LiteSpeed Cache или WP Rocket с настройками исключения динамических параметров.
  • Избегайте тяжелых запросов с большим количеством JOIN или фильтров в pre_get_posts — лучше использовать встроенные WooCommerce методы.
  • Регулярно обновляйте WooCommerce и тему, чтобы избежать багов в пагинации.
  • Для больших магазинов рассмотрите использование ElasticPress или внешнего поиска для ускорения навигации.

Сравнение вариантов решения проблемы пагинации

ПодходПлюсыМинусы
Сброс постоянных ссылокБыстро и просто решает большинство проблем с 404Не устраняет конфликты кода или плагинов
Отключение конфликтных плагинов/темВыявляет источник проблемыТребует времени и тестирования
Исправление кастомных фильтровПолное устранение ошибки на уровне кодаТребует навыков PHP и понимания WP_Query
Настройка кэшированияУлучшение производительности без потери функционалаСложность настройки и тестирования

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Автоматическое управление XML Sitemap в WordPress: настройка и примеры
13.03.2026
WooCommerce: автоматическое отключение неактивных товаров по продажам
06.07.2026
Автоматическое отключение ненужных виджетов в WordPress: практическое руководство
05.02.2026
WooCommerce: автоматическое изменение цен товаров по условиям
27.04.2026
Как установить и настроить Clearfy Pro для оптимизации WordPress
12.04.2026
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее