Как закрыть дубли страниц от пагинации в WordPress: robots, noindex и canonical

Дубли из-за пагинации — типичная техническая проблема на WordPress-сайтах с рубриками, архивами, блогами и каталогами записей. Чаще всего в индекс попадают страницы вида /category/page/2/, /tag/page/3/ или архивы автора, которые не несут самостоятельной ценности, но создают лишние URL и размывают сигналы для поиска. Ошибка обычно не в самой пагинации, а в том, что её закрывают слишком грубо: ставят noindex на всё подряд, ломают canonical или запрещают обход в robots.txt там, где это мешает поисковику увидеть структуру сайта.

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

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

Типичные симптомы

  • в Google Search Console растёт число проиндексированных URL с /page/;
  • в выдаче появляются архивы, которые не должны конкурировать с основными страницами;
  • на страницах пагинации одинаковые title и meta description;
  • канонические ссылки указывают на саму страницу пагинации, хотя это не всегда нужно;
  • внутренние ссылки ведут на дубли, а не на основную страницу рубрики.

Что проверить до изменений

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

  • есть ли <meta name="robots" content="noindex,follow"> на страницах пагинации;
  • какой canonical стоит на странице /page/2/;
  • не закрыты ли такие URL в robots.txt;
  • не генерирует ли тема отдельные архивы с дублирующимся контентом.

Какой способ выбрать: noindex, canonical или robots.txt

Для пагинации чаще всего подходит связка noindex,follow и корректный canonical. Полностью запрещать обход через robots.txt обычно не стоит: поисковик должен увидеть страницу, чтобы прочитать мета-роботы и понять структуру ссылок. Если запретить обход, URL может остаться в индексе как «известный, но не просканированный», а проблема не исчезнет.

Подход Когда использовать Минус
noindex,follow Для архивов и пагинации, которые не должны ранжироваться Страницы могут ещё какое-то время оставаться в индексе
canonical на первую страницу Если пагинация не должна конкурировать с первой страницей архива Нужно аккуратно проверить, не ломает ли это навигацию
robots.txt Редко, только для явного мусора и служебных URL Поисковик может не увидеть мета-теги и не переоценить страницу правильно

Пошаговое решение через код темы или плагина

Если у вас нет SEO-плагина, который уже управляет мета-роботами, можно добавить правило в functions.php дочерней темы или в небольшой mu-plugin. Ниже вариант, который ставит noindex,follow только на страницы пагинации архивов и не трогает обычные записи и страницы.

<?php
add_action('wp_head', function () {
    if (is_paged() && (is_home() || is_archive() || is_search())) {
        echo "<meta name=\"robots\" content=\"noindex,follow\" />\n";
    }
}, 1);

Этот код простой, но его нужно использовать осознанно. Он не меняет canonical, а только добавляет мета-робот. Если у вас уже есть Yoast SEO, Rank Math или другой SEO-плагин, сначала проверьте, не делает ли он это сам. Дублировать логику не нужно: можно получить конфликт мета-тегов или непредсказуемый результат.

Если нужен canonical на первую страницу архива

Иногда имеет смысл для страниц пагинации указывать канонический URL на первую страницу архива. Это спорный, но рабочий подход для некоторых сайтов с очень слабой ценностью страниц 2+ в рубриках. Делайте так только после проверки в Search Console и логах обхода.

<?php
add_filter('get_canonical_url', function ($canonical, $post) {
    if (is_paged() && (is_home() || is_archive() || is_search())) {
        $paged = max(2, get_query_var('paged'));
        if ($paged > 1) {
            return get_pagenum_link(1);
        }
    }
    return $canonical;
}, 10, 2);

Здесь есть важная оговорка: фильтр get_canonical_url относится к каноническому URL, который WordPress формирует для объектов. На архивных страницах поведение зависит от темы и плагинов. Поэтому после внедрения обязательно смотрите исходный код и не полагайтесь только на сам факт наличия фильтра.

Если используется SEO-плагин

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

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

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

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

Что смотреть в браузере

  • в исходном коде страницы пагинации есть noindex,follow;
  • canonical указывает на ожидаемый URL;
  • на первой странице архива нет случайного noindex;
  • ссылки «Следующая» и «Предыдущая» работают корректно;
  • страницы не отдают ошибку 404 или редирект на главную.

Что проверить в Search Console

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

<?php
// Быстрая диагностика: вывести текущий canonical в HTML-комментарий для теста.
add_action('wp_head', function () {
    if (is_paged() && (is_home() || is_archive())) {
        echo "<!-- paged archive detected: " . esc_url(get_pagenum_link(max(2, get_query_var('paged')))) . " -->\n";
    }
}, 99);

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

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

Самая частая ошибка — закрыть пагинацию в robots.txt и считать задачу решённой. Это не даёт поисковику увидеть мета-роботы и часто оставляет старые URL в индексе. Вторая ошибка — поставить noindex на все архивы, включая первую страницу рубрики. Тогда вы сами отрежете важные посадочные страницы.

  • Ошибка: noindex на всех страницах архива.
    Как исправить: ограничить правило только страницами с is_paged().
  • Ошибка: canonical на главную вместо первой страницы архива.
    Как исправить: указывать канонический URL именно на релевантный архив.
  • Ошибка: дублирующийся мета-тег от темы и SEO-плагина.
    Как исправить: оставить один источник генерации мета-данных.
  • Ошибка: закрытие URL в robots.txt до проверки индексации.
    Как исправить: сначала убрать дубль из индекса, потом уже решать, нужен ли запрет обхода.

Безопасность и производительность

Если вы вносите правки через functions.php, делайте это в дочерней теме или через mu-plugin. Иначе обновление темы сотрёт изменения. Для сайтов с кэширующим плагином после правок обязательно очищайте серверный и объектный кэш, иначе вы будете проверять старую версию HTML.

Ещё один практический момент: не добавляйте тяжёлые проверки в wp_head без необходимости. Условие is_paged() и проверка типа архива — дешёвые операции, но если вы начнёте делать дополнительные запросы к базе на каждом хите, это уже будет лишняя нагрузка. Для такой задачи код должен быть коротким и предсказуемым.

Как понять, что решение сработало

Результат считается нормальным, если выполняются все три условия: на страницах пагинации стоит нужный meta robots, канонический URL не уводит на случайную страницу, а в Search Console постепенно уменьшается число ненужных URL в индексе. Не ждите мгновенного эффекта: поисковику нужно переобойти страницы и обновить сигналы.

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

Как закрыть от индексации отдельные страницы WordPress по шаблону и ролям
01.09.2026
Как отключить архивы меток в WordPress без потери внутренней перелинковки
28.08.2026
Как отключить архивы авторов в WordPress без потери индексации контента
04.09.2026
Как исключить страницы внутреннего поиска WordPress из индексации
18.08.2026
Как закрыть от индексации старые архивы авторов и дат в WordPress
25.08.2026