Как изменить количество товаров на странице категории WooCommerce в GeneratePress

Диагностика проблемы: почему не меняется количество товаров

По умолчанию WooCommerce выводит 12 товаров на странице категории. Иногда возникает необходимость изменить это число, чтобы увеличить или уменьшить количество отображаемых товаров для удобства пользователей и улучшения конверсии.

В теме GeneratePress изменение количества товаров на странице категории не происходит через стандартные настройки темы, так как GeneratePress не переопределяет этот параметр. Часто пользователи пытаются менять значения в панели Customizer или в настройках темы, но это не работает.

Если вы используете плагины кэширования или оптимизации, они могут кэшировать страницы и мешать изменениям отображения товара. Также возможно, что кастомный код или дочерняя тема переопределяет количество товаров.

Пошаговое решение: как изменить количество товаров на странице категорий

Использование фильтра WooCommerce

Самый надежный способ изменить количество товаров на странице категории — добавить фильтр loop_shop_per_page в functions.php вашей дочерней темы или через плагин для пользовательских функций.

function gp_custom_products_per_page( $cols ) {
    // Указываем нужное количество товаров
    return 20;
}
add_filter( 'loop_shop_per_page', 'gp_custom_products_per_page', 20 );

В этом примере установлено 20 товаров на страницу. Измените значение 20 на необходимое вам.

Альтернативный способ: изменение через кастомный плагин

Если вы не хотите трогать functions.php, можно создать небольшой плагин, например custom-products-per-page.php:

<?php
/**
 * Plugin Name: Custom Products Per Page
 * Description: Изменяет количество товаров на странице категории WooCommerce
 * Version: 1.0
 * Author: Ваше Имя
 */

add_filter( 'loop_shop_per_page', function() {
    return 20; // или любое другое число
}, 20 );

Загрузите и активируйте этот плагин через админку WordPress.

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

  • Очистите кэш браузера и плагинов кэширования (например, WP Super Cache, W3 Total Cache, LiteSpeed Cache).
  • Перейдите на страницу категории товара и убедитесь, что количество товаров изменилось на указанное в коде.
  • Если используется пагинация, проверьте, что количество страниц изменилось адекватно.
  • Откройте инструменты разработчика браузера (F12) и убедитесь, что в HTML-разметке выводится нужное количество товаров.

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

  • Изменения не применяются: скорее всего, активен кэш, либо фильтр переопределяется в другом месте. Отключите кэш и временно деактивируйте плагины, которые могут конфликтовать.
  • Код добавлен в functions.php основной темы: при обновлении темы изменения пропадут. Используйте дочернюю тему или плагин.
  • Неверное значение возвращаемое фильтром: убедитесь, что возвращается целое число, иначе WooCommerce может игнорировать фильтр.
  • Наличие плагинов, которые меняют вывод товаров: проверьте совместимость и отключите их для теста.

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

  • Не устанавливайте слишком большое количество товаров на страницу (больше 30–40), чтобы не замедлять загрузку и не ухудшать UX.
  • При использовании кэширования обязательно очищайте кэш после внесения изменений, чтобы увидеть результат.
  • Добавляйте кастомный код через дочернюю тему или плагин, чтобы избежать потери изменений при обновлении.
  • Если планируете динамически менять количество товаров, учитывайте мобильную адаптацию и используйте условные конструкции для разных устройств.

Сравнение способов изменения количества товаров на странице категории

МетодПростотаГибкостьРиски
Добавление фильтра в functions.php дочерней темыСредняяВысокаяПотеря при обновлении основной темы
Создание кастомного плагинаСредняяВысокаяТребуется базовые знания плагинов
Использование плагинов изменения WooCommerce (например, Customizer)ВысокаяСредняяДополнительная нагрузка, возможные конфликты
WooCommerce: как автоматически очищать корзину после успешной оплаты в GeneratePress
21.05.2026
Как добавить поддержку плюшевого тёмного режима в GeneratePress
15.04.2026
Как изменить количество товаров на странице категории WooCommerce в GeneratePress
21.04.2026
Как создать динамические блоки с подгрузкой в GeneratePress для улучшения производительности
16.12.2025
Как избежать проблем с отображением Google AdSense в GeneratePress
01.03.2026