wpfinder.ru wordpress wpfinder.ru

Как закрыть дубли страниц пагинации от индексации в WordPress

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

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

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

Не каждая пагинация требует вмешательства. Если у вас небольшой сайт и страницы архива не индексируются массово, трогать ничего не нужно. Но если в Search Console уже есть десятки URL вида /page/2/, /page/3/, а в индексе они конкурируют с основным архивом, это сигнал.

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

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

Проверить это можно вручную: откройте архив рубрики, автора или блога и посмотрите, есть ли у страниц 2+ уникальная ценность. Если там просто продолжение списка записей без отдельного смысла, чаще всего такие URL не нужны в индексе.

Что именно закрывать: noindex, canonical или robots.txt

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

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

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

Диагностика: где WordPress уже отдаёт дубли

Сначала нужно понять, откуда именно идут проблемные URL. В WordPress пагинация может появляться в нескольких местах: архивы записей, рубрики, теги, авторы, результаты поиска, кастомные таксономии. Не стоит править только блог, если дубли идут ещё и из тегов.

Что проверить в первую очередь

  • архивы рубрик: /category/.../page/2/;
  • архивы тегов: /tag/.../page/2/;
  • архивы автора: /author/.../page/2/;
  • страницы поиска: /?s=...&paged=2;
  • кастомные архивы CPT и таксономий.

Если у вас стоит SEO-плагин, сначала проверьте его настройки. Многие плагины уже умеют ставить noindex для архивов, но не всегда делают это для пагинации так, как вам нужно. Иногда проблема не в WordPress, а в конфликте между плагином SEO и темой, которая вручную выводит мета-теги.

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

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

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

add_filter('get_canonical_url', function ($canonical) {
    if (is_paged() && (is_archive() || is_home() || is_search())) {
        return get_pagenum_link(1, false);
    }

    return $canonical;
});

Этот вариант рабочий, но его нужно применять осознанно. Если у вас SEO-плагин уже выводит robots-мета, не дублируйте тег вручную. В таком случае лучше использовать настройки плагина или его фильтры, иначе получите два conflicting meta robots в <head>.

Если нужен более точный контроль по типам архивов

Иногда закрывать надо не всё подряд, а только теги и автора, оставив рубрики открытыми. Тогда логика должна быть уже по условиям:

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

add_filter('get_canonical_url', function ($canonical) {
    if (is_paged() && (is_tag() || is_author() || is_search())) {
        return get_pagenum_link(1, false);
    }

    return $canonical;
});

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

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

Если задача типовая и у вас уже есть SEO-плагин, сначала проверьте его настройки. Код нужен тогда, когда стандартных переключателей не хватает или когда нужно поведение только для части архивов.

  • Плагин — быстрее, меньше риска сломать шаблон, но меньше гибкости.
  • Код — точнее, но требует аккуратного теста после обновлений темы и плагинов.
  • Компромисс — использовать SEO-плагин для базового noindex, а кодом добить исключения по отдельным типам архивов.

Если вы используете Clearfy Pro, имеет смысл сначала посмотреть, не закрывает ли он архивы и дубли уже на уровне настроек. Это удобнее, чем дублировать логику в теме, особенно если проект поддерживает несколько разработчиков. Подробности есть на странице плагина: Clearfy Pro.

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

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

Чек-лист проверки

  • откройте /page/2/ у рубрики, тега или архива записи;
  • убедитесь, что в <head> есть noindex,follow только там, где это нужно;
  • проверьте canonical: он должен вести на первую страницу серии;
  • посмотрите исходный код, нет ли второго meta robots от SEO-плагина;
  • прогоните URL через проверку страницы в Google Search Console;
  • сравните статус индексации через несколько дней, а не сразу после публикации правки.

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

Частые ошибки и почему они возникают

Закрыли пагинацию в robots.txt

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

Добавили два meta robots одновременно

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

Поставили canonical на главную сайта вместо первой страницы архива

Это логическая ошибка. Для пагинации архива canonical должен вести на первую страницу этой же серии, а не на домашнюю страницу. Иначе вы смешиваете разные сущности и ухудшаете понимание структуры сайта.

Закрыли всё подряд без анализа

Если у вас есть посадочные рубрики, которые реально собирают трафик, их нельзя бездумно переводить в noindex. Сначала посмотрите, какие архивы полезны пользователю и поиску, а какие просто дублируют список материалов.

Когда лучше не трогать пагинацию кодом

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

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

Если нужен более широкий набор инструментов для технической чистки WordPress, можно посмотреть и на связку настроек SEO, удаления дублей и отключения лишнего мусора в интерфейсе. Но в любом случае сначала стоит понять, какие URL реально мешают, а какие просто существуют и не требуют вмешательства.

×

AI-плагин

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

SEO и мета-теги

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

Изображения

Комментарии

Подробнее