Пагинация архивов — один из самых частых источников технических дублей в 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, если они туда попадают из-за темы или стороннего плагина.
Пошаговая настройка без лишнего риска
- Определите, какие архивы должны индексироваться: рубрики, теги, авторы, дата.
- Проверьте, есть ли у пагинации уникальный смысл для пользователя.
- Выберите один подход: индексировать, закрыть через
noindex,followили убрать URL из генерации. - Проверьте canonical на страницах 2+.
- Убедитесь, что sitemap не содержит технические URL с параметрами.
- После правки отправьте на повторную проверку несколько типовых 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 и внутренние ссылки. Если этого не произошло, значит, дубли ещё живут в шаблоне, фильтрах или плагинах, а не только в мета-тегах.