Как отключить пагинацию архивов в WordPress без поломки SEO и шаблонов

Пагинация архивов в WordPress часто всплывает не как отдельная задача, а как побочный эффект: на сайте копятся страницы /page/2/, /page/3/, а в индексе остаются пустые или почти пустые листинги. Это особенно заметно на блогах с короткими записями, на сайтах с тегами, а также после смены темы, когда шаблон архива начинает выводить слишком мало контента на страницу.

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

Когда пагинация архивов становится проблемой

Сама по себе пагинация не ошибка. Проблема начинается, когда:

  • страницы архивов почти пустые и не дают уникальной ценности;
  • в выдачу попадают теги и рубрики с 1–2 записями;
  • в теме дублируются блоки заголовков, хлебных крошек и описаний на каждой странице пагинации;
  • поисковик тратит обход на служебные листинги вместо полезных страниц;
  • на сайте есть фильтры, которые создают похожие URL с разными параметрами и пагинацией.

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

Диагностика: что именно нужно отключить

Перед правкой кода важно понять, что вы хотите убрать:

1. Только ссылки на следующую страницу

Это вариант, когда на архиве нужна только первая страница, а переходы page/2 и дальше не нужны ни пользователю, ни поисковику. Обычно так делают на небольших сайтах с короткими архивами.

2. Пагинацию в шаблоне, но не сами URL

Иногда ссылки можно скрыть из интерфейса, но оставить доступ к страницам по прямому адресу. Это полезно, если старые URL уже в индексе или на них есть внешние ссылки.

3. Индексацию пагинации, но с нормальным каноникалом

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

Проверка перед изменениями простая:

  • откройте рубрику, тег и архив автора;
  • посмотрите, есть ли на них навигация next/prev или обычные ссылки на страницы;
  • проверьте исходный код на наличие rel="next" и rel="prev";
  • сравните, отличается ли контент на первой и второй странице архива.

Пошаговое решение: как отключить пагинацию безопасно

Вариант 1. Скрыть пагинацию в шаблоне архива

Если тема выводит пагинацию через отдельную функцию, проще всего убрать её из шаблона. Обычно это файл archive.php, home.php, category.php или шаблон части архива.

Например, в теме может быть такой вызов:

<?php the_posts_pagination(); ?>

Если вы хотите отключить навигацию только на определённых архивах, оберните вызов в условие:

<?php if ( ! is_category( array( 'news', 'promo' ) ) ) : ?>
    <?php the_posts_pagination(); ?>
<?php endif; ?>

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

Вариант 2. Ограничить количество записей на архиве

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

<?php
add_action( 'pre_get_posts', function( $query ) {
    if ( is_admin() || ! $query->is_main_query() ) {
        return;
    }

    if ( $query->is_category() ) {
        $query->set( 'posts_per_page', 20 );
    }

    if ( $query->is_tag() ) {
        $query->set( 'posts_per_page', 30 );
    }
} );

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

Вариант 3. Убрать пагинацию только для пустых или слабых архивов

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

<?php
$term = get_queried_object();
$count = isset( $term->count ) ? (int) $term->count : 0;

if ( $count > 10 ) {
    the_posts_pagination();
}

Число 10 здесь условное. Его нужно подбирать по фактической структуре сайта: на новостнике порог будет один, на корпоративном блоге — другой.

Вариант 4. Отключить ссылки next/prev в <head>

На старых темах WordPress может выводить служебные ссылки на следующую и предыдущую страницу архива. Если они вам не нужны, их можно убрать через remove_action.

<?php
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 );
remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );

Важно: это не отключает саму пагинацию, а только убирает часть служебной разметки. Используйте этот вариант, если хотите уменьшить шум в <head>, но не ломать навигацию.

Что выбрать: плагин, код или настройку темы

ПодходКогда подходитПлюсыМинусы
Настройка темыПагинация выводится в шаблоне явноБыстро, прозрачноЗависит от темы, может слететь при обновлении
Код через pre_get_postsНужно сократить число страниц архиваГибко, работает на уровне запросаТребует аккуратной проверки условий
SEO-плагинНужно управлять индексированием и мета-тегамиУдобно для каноникала и noindexНе убирает проблему в шаблоне, только маскирует её

Если вам нужно не только отключить пагинацию, но и подчистить дубли, служебные страницы и лишние элементы в <head>, имеет смысл посмотреть в сторону инструментов вроде Clearfy Pro: он закрывает часть типовых задач по чистке сайта и SEO-настройкам. Но даже в этом случае шаблон и запросы лучше проверить вручную.

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

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

  • на нужных архивах больше не отображаются ссылки на страницы 2, 3 и далее;
  • прямой переход на /page/2/ ведёт себя ожидаемо: либо отдаёт 404, либо остаётся доступным по вашей логике;
  • в исходном коде нет лишних rel="next" и rel="prev";
  • в Search Console не растёт число страниц с низкой ценностью;
  • в логах нет всплеска 404 после отключения навигации.

Практически это можно проверить так:

# если есть доступ к серверу, быстро смотрим ответ
curl -I https://example.com/category/news/page/2/

Если вы оставили URL доступными, проверьте, что они не дублируют первую страницу по title, description и основному контенту. Если отключали пагинацию полностью, убедитесь, что старые ссылки не ведут в бесконечную цепочку редиректов.

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

Скрыли пагинацию в шаблоне, но не учли старые URL

Пользователь не видит навигацию, но /page/2/ всё ещё открывается напрямую. Если такие страницы вам не нужны, добавьте 404 или 301 на первую страницу архива. Делать это нужно выборочно, иначе можно сломать нормальные архивы с большим количеством записей.

Отключили пагинацию для всех архивов сразу

Это типичная ошибка при слишком широком условии в pre_get_posts. В результате ломаются рубрики, теги и архивы автора, где пагинация была полезна. Проверяйте условия через is_category(), is_tag(), is_author() и не вешайте изменения на весь фронтенд без необходимости.

Убрали навигацию, но не сократили число записей на странице

Если на архиве по-прежнему выводится мало записей, а контента много, вы просто спрятали симптом. Лучше сначала понять, почему архив дробится на лишние страницы: из-за малого posts_per_page, из-за фильтров темы или из-за лишних таксономий.

Сломали кэш после правки шаблона

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

Чек-лист перед публикацией изменений

  • Поняли, какие архивы нужно трогать: рубрики, теги, авторы или всё сразу.
  • Проверили, нужен ли прямой доступ к /page/2/.
  • Сделали правку в дочерней теме или через отдельный плагин с кодом.
  • Проверили исходный код страницы и ответы сервера.
  • Очистили кэш и перепроверили страницу в инкогнито.
  • Сравнили поведение первой и второй страницы архива.

Практический совет по безопасности и поддержке

Если правка касается темы, не вносите изменения прямо в родительскую тему. Для точечных правок лучше использовать дочернюю тему или небольшой must-use плагин. Так вы не потеряете изменения после обновления и сможете быстро отключить эксперимент, если что-то пойдёт не так.

Ещё один полезный момент: если на сайте регулярно появляются дубли архивов, имеет смысл не только отключать пагинацию точечно, но и пересмотреть общую SEO-гигиену. Для этого подходят инструменты, которые умеют чистить лишние мета-теги, дубли и служебные элементы без переписывания темы вручную.

В итоге рабочая схема обычно такая: сначала диагностируете, где пагинация действительно мешает, потом решаете, нужно ли скрыть навигацию, сократить число страниц или закрыть от индексации только часть архивов. Это даёт предсказуемый результат без побочных поломок в шаблонах и без лишних 404.

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

⭐⭐⭐⭐⭐
Как отключить пагинацию архивов в WordPress без поломки SEO и шаблонов
05.09.2026
Как убрать дубли страниц пагинации из индексации в WordPress
02.09.2026
×
-15%
на премиум-тему
Reboot

Создай сайт мечты
на WordPress!

Купить со скидкой »