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

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

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

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

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

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

тогда имеет смысл ограничить индексацию именно пагинированных URL, а не всего архива целиком.

Диагностика: где именно появляются дубли

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

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

  • Google Search Console — отчёт по страницам и исключённым URL.
  • site: запросы в поиске — ищите /page/, параметры ?paged=, архивы автора и рубрик.
  • Исходный код страниц — есть ли rel="canonical" на саму страницу пагинации или на первую страницу архива.
  • robots.txt — не закрывает ли он случайно нужные разделы.

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

Быстрая проверка через консоль

Можно посмотреть, как сервер отдаёт заголовки и canonical. Например:

curl -I https://example.com/category/news/page/2/

И отдельно проверить HTML:

curl -s https://example.com/category/news/page/2/ | grep -i canonical

Если canonical указывает на первую страницу архива, это не всегда ошибка. Но если страница пагинации вам не нужна в индексе, лучше явно задать noindex,follow для таких URL.

Как закрыть пагинацию от индексации: три рабочих подхода

Есть три нормальных варианта: через SEO-плагин, через фильтр WordPress или через серверную логику. Выбор зависит от того, насколько у вас сложная тема и есть ли уже SEO-инструмент в проекте.

ПодходКогда подходитПлюсМинус
SEO-плагинОбычный сайт без сложной логикиБыстро и без кодаМеньше контроля над исключениями
Код в теме/плагинеНужны точечные правилаГибко и прозрачноНужна аккуратность при обновлениях
Серверные правилаРедко, когда нужно отдать заголовок на уровне сервераНе зависит от темыСложнее поддерживать

Вариант 1. Через SEO-плагин

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

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

Вариант 2. Через код: noindex для страниц пагинации

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

add_filter( 'wp_robots', function( array $robots ) {
    if ( is_paged() && ( is_home() || is_archive() || is_search() ) ) {
        $robots['noindex'] = true;
        $robots['follow']  = true;
    }

    return $robots;
} );

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

Вариант 3. Через wp_robots с исключениями

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

add_filter( 'wp_robots', function( array $robots ) {
    if ( is_paged() && ( is_category() || is_tag() ) ) {
        $robots['noindex'] = true;
        $robots['follow']  = true;
    }

    return $robots;
} );

Такой подход полезен, если рубрики у вас служебные, а авторские страницы реально приводят трафик и должны индексироваться.

Что делать с canonical и rel=next/prev

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

Атрибуты rel="next" и rel="prev" Google давно не использует как сигнал ранжирования, но некоторые темы и плагины всё ещё выводят их в коде. Это не критично, но и рассчитывать на них не стоит. Если у вас старый шаблон, проверьте, не генерирует ли он лишние ссылки в <head>.

Пошаговое решение без поломки SEO

  1. Определите, какие именно URL нужно закрыть: только /page/N/ или ещё и параметры сортировки.
  2. Проверьте, нет ли уже noindex в SEO-плагине или теме.
  3. Добавьте правило через wp_robots или настройку плагина.
  4. Не закрывайте первую страницу категории, если она является посадочной.
  5. Проверьте canonical и внутренние ссылки.
  6. После обновления отправьте на переобход только важные страницы, а не весь сайт.

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

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

  • HTML-код: на странице пагинации должен появиться noindex,follow в мета robots или заголовке robots.
  • Search Console: через несколько дней/недель статус страниц должен измениться, а число дублей — уменьшиться.
  • Логи сервера: если у вас есть доступ, посмотрите, не выросло ли число бесполезных обходов параметров и пагинации.
  • Внутренняя навигация: ссылки на архивы должны вести на первую страницу категории, а не на случайную страницу пагинации.

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

curl -I https://example.com/category/news/page/2/ | grep -i robots

Если заголовок не меняется, а в HTML всё корректно, значит мета robots выводится только в разметке. Это допустимо, но лучше понимать, где именно реализовано правило.

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

Закрывают весь архив вместо пагинации

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

Ставят noindex через robots.txt

robots.txt не убирает уже известные поисковику URL из индекса так, как это делает noindex. Если страница уже попала в индекс, одного запрета на обход мало. Сначала задайте noindex, потом при необходимости ограничьте обход.

Путают пагинацию и фильтры

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

Не проверяют тему и плагины на дубли мета-тегов

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

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

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

Не ставьте тяжёлые условия в wp_head без необходимости. Фильтр wp_robots как раз удобен тем, что работает на уровне логики WordPress и не требует парсить HTML на лету. Для больших сайтов это обычно чище, чем костыли через буферизацию вывода.

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

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

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

  • оставить страницы открытыми;
  • убрать мусорные параметры;
  • сократить число дублей через нормальные canonical;
  • следить, чтобы пагинация не перетягивала внутренний вес с первой страницы.

То есть задача не в том, чтобы «спрятать всё лишнее», а в том, чтобы поисковик видел одну понятную версию каждого типа страницы. Для WordPress это обычно решается точечно: без тотального noindex и без ломки архива целиком.

Как создать Custom Post Type в WordPress с примерами кода
08.09.2026
WooCommerce: как отключить самостоятельную регистрацию пользователей на сайте
08.09.2026
Как создать функцию автоматической отправки Email в WordPress с примерами кода
08.09.2026
WooCommerce: как отключить автологин после регистрации пользователя
25.08.2026
Как установить лимит для загрузки файлов в WordPress: практические решения
08.09.2026
×
-15%
на премиум-тему
Bono

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

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