Как отключить AJAX пагинацию в WordPress без плагинов

В современных темах и плагинах WordPress часто используется AJAX пагинация для динамической подгрузки контента без перезагрузки страницы. Однако в некоторых случаях AJAX пагинация может вызывать проблемы с индексацией сайта, снижать скорость или создавать конфликты с другими скриптами. В этой статье мы подробно рассмотрим, как отключить AJAX пагинацию в WordPress вручную, без установки дополнительных плагинов, и дадим практические рекомендации с примерами кода.

Что такое AJAX пагинация и зачем ее отключать

AJAX пагинация — это метод загрузки следующей страницы постов или товаров без полной перезагрузки страницы, с помощью JavaScript и AJAX-запросов. Это повышает удобство пользователя и ускоряет навигацию, но иногда:

  • Поисковые роботы не всегда корректно индексируют AJAX-загружаемый контент.
  • Возникают конфликты с другими плагинами или кастомными скриптами.
  • Увеличивается нагрузка на сервер из-за частых AJAX-запросов.

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

Как определить, используется ли AJAX пагинация в вашей теме

Первым делом нужно понять, действительно ли ваша тема применяет AJAX пагинацию. Для этого:

  • Откройте страницу с постами или товарами и попробуйте перейти на следующую страницу. Если при клике на номер страницы или кнопку «Показать еще» страница не перезагружается, а контент подгружается динамически — это AJAX пагинация.
  • Посмотрите исходный код темы, обычно AJAX пагинация реализуется через JavaScript-файлы. В консоли браузера в разделе «Network» при переходе на другую страницу будут AJAX-запросы.

Чаще всего AJAX пагинация реализуется через jQuery и функции типа $.ajax() или fetch().

Отключаем AJAX пагинацию: общий подход

Чтобы отключить AJAX пагинацию, нужно убрать или изменить JavaScript, который отвечает за динамическую подгрузку, и вернуть стандартные ссылки пагинации с перезагрузкой страницы.

Рассмотрим общий алгоритм действий:

  1. Найдите и отключите скрипт, который инициализирует AJAX пагинацию.
  2. Убедитесь, что в шаблоне пагинация генерируется с помощью стандартной функции paginate_links() или the_posts_pagination().
  3. Если пагинация генерируется вручную, поправьте ссылки на страницы, чтобы они вели на URL с параметром paged.
  4. Очистите кэш браузера и сайта, чтобы проверить результат.

Пример: отключение AJAX пагинации в файлах темы

Предположим, в вашей теме есть скрипт ajax-pagination.js, который подключается в functions.php так:

function wpto_dequeue_ajax_pagination() {
    wp_dequeue_script('ajax-pagination');
}
add_action('wp_print_scripts', 'wpto_dequeue_ajax_pagination', 100);

Этот код отключит загрузку скрипта, отвечающего за AJAX пагинацию.

Если скрипт подключается иначе, например, через wp_enqueue_scripts, используйте wp_dequeue_script() и wp_deregister_script() с соответствующим именем.

Корректное отображение пагинации после отключения AJAX

После отключения AJAX важно, чтобы пагинация работала корректно. В шаблоне архива (например, archive.php или index.php) используйте стандартную функцию:

if (function_exists('the_posts_pagination')) {
    the_posts_pagination(array(
        'mid_size'  => 2,
        'prev_text' => __('« Назад'),
        'next_text' => __('Вперед »'),
    ));
}

Эта функция выведет ссылки пагинации с нормальными URL, например site.ru/page/2/, которые обеспечат перезагрузку страницы.

Как сохранить SEO и UX после отключения AJAX пагинации

Отключая AJAX, не забывайте о двух важных вещах:

Оптимизация SEO

Стандартная пагинация лучше индексируется поисковыми системами. Убедитесь, что ссылки пагинации корректно формируются и доступны для роботов. Можно дополнительно использовать плагин Clearfy Pro, который помогает управлять индексацией страниц и улучшает SEO.

Удобство пользователей

Чтобы пользователям было комфортно переходить между страницами, добавьте стили для пагинации и, по желанию, реализуйте плавную прокрутку к началу списка постов при смене страницы. Пример такого скрипта:

document.querySelectorAll('.pagination a').forEach(link => {
    link.addEventListener('click', function(e) {
        // Плавный скролл после перехода
        setTimeout(() => window.scrollTo({ top: 0, behavior: 'smooth' }), 100);
    });
});

Альтернативы: использование плагинов с возможностью включения/отключения AJAX

Если вы хотите иметь возможность включать и отключать AJAX пагинацию без правки кода, можно воспользоваться плагинами, которые поддерживают такую настройку. Например, ABC Pagination позволяет гибко управлять пагинацией, включая опцию отключения AJAX.

Итоги и полезные советы

  • Перед внесением изменений сделайте резервную копию сайта.
  • Проверяйте работу пагинации на разных устройствах и браузерах.
  • Если AJAX пагинация идет из плагина, попробуйте отключить ее в настройках плагина.
  • Для кастомных тем рекомендуется использовать стандартные функции WordPress для пагинации.
  • Используйте инструменты разработчика браузера для выявления скриптов, отвечающих за AJAX.

Отключение AJAX пагинации вручную — простой и эффективный способ решить проблемы с SEO, совместимостью и производительностью на сайте WordPress без лишних плагинов.

Как удалить кэш в WordPress: практические способы и советы
28.01.2026
Как удалить неиспользуемые метаданные в WordPress для оптимизации базы данных
22.02.2026
Как исправить ошибку maximum execution time в WooCommerce при массовом импорте
24.04.2026
Как создать автоматический импорт продуктов в WordPress с помощью REST API
29.03.2026
Как использовать WPGPT для автоматического создания контента в WordPress
13.12.2025