wphierarchy.ru wordpress Структура шаблонов WordPress

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

Пагинация архивов — один из самых частых источников технических дублей в WordPress. На сайте могут одновременно индексироваться страницы вида /category/news/page/2/, /tag/seo/page/3/, архивы автора и их вариации с параметрами сортировки. В результате поисковик тратит обход на слабые страницы, а в отчётах появляются URL, которые не несут самостоятельной ценности.

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

Когда пагинация превращается в дубль

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

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

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

  • есть ли у архивов пагинация в виде /page/2/ и не создаются ли альтернативные URL через параметры;
  • какой canonical отдаёт тема или SEO-плагин на страницах 2, 3, 4;
  • не закрыты ли архивы через noindex в одном месте и не переопределяются ли они в другом;
  • нет ли редиректов между версиями со слэшем и без него;
  • не генерирует ли плагин фильтров отдельные страницы с тем же списком записей.

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

Самый надёжный способ — посмотреть HTML исходник и заголовки ответа. На страницах пагинации откройте исходный код и найдите:

  • <link rel="canonical" ...>;
  • <meta name="robots" ...>;
  • ссылки на следующую и предыдущую страницу, если тема их выводит;
  • параметры в URL, которые добавляет фильтр или сортировка.

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

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

И отдельно посмотреть HTML:

curl -s https://example.com/category/news/page/2/ | grep -iE 'canonical|robots|next|prev'

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

Что делать: три рабочих сценария

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

ПодходКогда использоватьМинус
Оставить в индексеАрхивы реально приводят трафик и помогают обходу каталогаНужно следить за canonical и уникальностью мета
noindex,followПагинация не нужна в поиске, но ссылки внутри архива полезныНе все поисковики одинаково быстро убирают URL из индекса
Закрыть через редирект или убрать генерациюСтраница создаётся только технически и не нужна пользователюМожно сломать навигацию, если редиректить слишком агрессивно

Сценарий 1: оставить пагинацию, но привести canonical в порядок

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

add_filter('wpseo_canonical', function ($canonical) {
    if (is_paged()) {
        return get_pagenum_link(get_query_var('paged'));
    }
    return $canonical;
});

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

Сценарий 2: закрыть пагинацию от индексации, но оставить переходы

Это самый частый вариант для новостных, блоговых и контентных сайтов, где в поиске нужна только первая страница архива. Тогда страницы пагинации можно пометить как noindex,follow. Для Yoast SEO это обычно настраивается в интерфейсе, но если нужно точечно, можно использовать фильтр:

add_filter('wpseo_robots', function ($robots) {
    if (is_paged() && (is_category() || is_tag() || is_author() || is_archive())) {
        return 'noindex,follow';
    }
    return $robots;
});

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

Сценарий 3: убрать лишние URL с параметрами

Если дубли создают не сами страницы /page/2/, а параметры вроде ?sort=popular или ?filter=..., сначала нужно остановить генерацию таких ссылок. Иначе вы будете лечить следствие, а не причину.

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

add_filter('wpseo_canonical', function ($canonical) {
    $canonical = remove_query_arg(array('sort', 'filter', 'utm_source', 'utm_medium', 'utm_campaign'), $canonical);
    return $canonical;
});

Этот код не решает всё автоматически, но помогает убрать мусорные параметры из canonical, если они туда попадают из-за темы или стороннего плагина.

Пошаговая настройка без лишнего риска

  1. Определите, какие архивы должны индексироваться: рубрики, теги, авторы, дата.
  2. Проверьте, есть ли у пагинации уникальный смысл для пользователя.
  3. Выберите один подход: индексировать, закрыть через noindex,follow или убрать URL из генерации.
  4. Проверьте canonical на страницах 2+.
  5. Убедитесь, что sitemap не содержит технические URL с параметрами.
  6. После правки отправьте на повторную проверку несколько типовых URL.

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

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

  • Откройте исходный код страницы пагинации и убедитесь, что canonical соответствует выбранной логике.
  • Проверьте meta robots: на страницах, закрытых от индексации, должен быть noindex,follow, а не случайный набор директив.
  • Сравните URL в sitemap и в отчётах поисковой консоли.
  • Пройдитесь по нескольким архивам с разным количеством страниц: рубрика, тег, автор.
  • Убедитесь, что внутренние ссылки на следующую страницу работают без редиректов и 404.

Если используете Google Search Console или Яндекс Вебмастер, смотрите не только статус индексации, но и то, как часто робот обходит страницы пагинации. Иногда URL ещё долго висят в отчётах после того, как вы уже закрыли их от индексации — это нормальная задержка, а не признак ошибки.

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

Canonical указывает на первую страницу, но пагинация нужна в индексе

Это конфликт логики. Либо оставляйте canonical на саму страницу пагинации, либо сознательно закрывайте её от индексации. Смешивать оба подхода не стоит.

Закрыли архив целиком вместо страниц 2+

Так часто бывает, когда правило написано слишком широко: is_archive() без проверки is_paged(). В итоге из индекса выпадает и первая страница, которая могла приносить трафик.

Параметры сортировки продолжают плодить URL

Значит, проблема не в пагинации, а в генерации ссылок. Уберите параметры из шаблона, отключите индексирование таких URL и не добавляйте их в sitemap.

Редирект со страниц 2+ на первую страницу

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

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

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

Перед выкладкой на продакшен проверьте:

  • нет ли конфликтов с SEO-плагином, который уже управляет canonical и robots;
  • не ломается ли кеширование страниц архива после изменения мета-тегов;
  • не создаёт ли правка дополнительную нагрузку на каждый запрос;
  • не закрываете ли вы случайно важные архивы, которые реально ранжируются.

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

Главный критерий простой: после правки у поисковика должен остаться один понятный URL на каждый полезный архив, а всё остальное — либо закрыто, либо приведено к нему через canonical и внутренние ссылки. Если этого не произошло, значит, дубли ещё живут в шаблоне, фильтрах или плагинах, а не только в мета-тегах.

×
до 3225₽

Продавай темы и плагины WordPress!

Лови с каждой продажи

Начать ⋙