Страницы пагинации — типичный источник мусорных URL в WordPress. На сайте с архивами, рубриками, тегами и поиском они быстро разрастаются, а в индекс попадают страницы вида /page/2/, /page/3/ и дальше. Проблема не в самой пагинации, а в том, что поисковик начинает тратить обход на второстепенные страницы вместо основных посадочных.
При этом закрывать пагинацию грубо, через удаление ссылок или отключение навигации, нельзя: пользователь должен свободно листать архивы, а робот — видеть внутреннюю структуру сайта. Задача здесь другая: оставить навигацию рабочей, но убрать страницы пагинации из индекса там, где они не несут самостоятельной ценности.
Когда это действительно нужно
Не каждый сайт должен закрывать пагинацию целиком. На новостных проектах, больших блогах и каталогах пагинация часто нужна для обхода контента, но не для ранжирования. Если в поиске уже всплывают страницы архивов с /page/2/, /page/5/ и похожими адресами, это хороший кандидат на техническую чистку.
Признаки проблемы
- в Google Search Console появляются URL с пагинацией, которые не должны быть посадочными;
- в выдаче видны страницы рубрик или тегов с номером страницы;
- поисковик индексирует много слабых архивов вместо основных материалов;
- на сайте есть дубли заголовков и мета-описаний между страницами пагинации;
- robots.txt не решает задачу, потому что страницы уже попали в индекс.
Если у вас маленький сайт с 20–30 материалами, проблема может быть несущественной. Но на проекте с сотнями публикаций пагинация почти всегда требует отдельной настройки.
Что проверить до изменений
Сначала нужно понять, как именно WordPress и тема выводят архивы. В разных темах пагинация может строиться через paginate_links(), the_posts_pagination() или кастомный шаблон. От этого зависит, где лучше вносить правки: в SEO-плагине, в functions.php или в шаблоне темы.
Проверьте три вещи:
- Есть ли у архива нормальная навигация по страницам.
- Не закрыты ли уже такие URL через
noindexили мета-тег robots. - Не ломается ли canonical на страницах рубрик и тегов.
Если canonical указывает на первую страницу архива, а пагинация при этом индексируется, это обычно признак неполной настройки, а не ошибки в шаблоне.
Рабочие способы закрыть пагинацию от индексации
Есть три практических варианта: через SEO-плагин, через код и через комбинацию обоих подходов. Для большинства проектов самый безопасный путь — оставить пагинацию доступной пользователю, но добавить noindex, follow на страницы с номером.
| Способ | Плюсы | Минусы |
|---|---|---|
| SEO-плагин | Быстро, без правки темы | Не всегда гибко для отдельных архивов |
| Код в теме или плагине | Точный контроль над условиями | Нужно аккуратно тестировать |
| robots.txt | Просто добавить правило | Не убирает уже проиндексированные URL |
Вариант 1: через SEO-плагин
Если у вас установлен плагин с управлением мета-robots, проверьте настройки архивов. В некоторых случаях можно задать noindex для рубрик, тегов, авторов и поисковой выдачи отдельно. Это удобно, если нужно закрыть не только пагинацию, но и весь тип архива.
Но у этого подхода есть ограничение: плагин обычно работает на уровне типа страницы, а не конкретной страницы пагинации. Поэтому для тонкой настройки лучше использовать код.
Вариант 2: добавить noindex для страниц пагинации через код
Ниже пример, который добавляет noindex, follow на архивы с номером страницы больше первой. Это не отключает навигацию и не мешает переходам по ссылкам.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_paged() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Этот вариант работает через стандартный фильтр wp_robots, который WordPress использует для формирования robots-мета. Он не привязан к конкретному SEO-плагину и подходит для большинства современных тем.
Если нужно ограничить только архивы рубрик и тегов, а не весь сайт, условие можно сузить:
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_paged() && ( is_category() || is_tag() || is_author() ) ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Такой подход полезен, если у вас есть отдельные посадочные страницы, которые должны индексироваться, но пагинация архивов — нет.
Вариант 3: закрыть пагинацию в robots.txt только как дополнительную меру
Правило в robots.txt может быть вспомогательным, но не основным. Оно не удаляет URL из индекса, если они уже известны поисковику. Поэтому использовать его стоит только вместе с noindex, а не вместо него.
User-agent: *
Disallow: /page/На практике это правило слишком грубое, потому что может задеть не только архивы, но и другие URL с похожей структурой. Если решите использовать robots.txt, сначала проверьте реальные адреса на сайте и не добавляйте правило вслепую.
Пошаговая схема внедрения
- Определите, какие архивы должны оставаться индексируемыми.
- Проверьте, как формируется canonical на страницах пагинации.
- Добавьте
noindex, followчерезwp_robotsили SEO-плагин. - Не удаляйте ссылки на пагинацию из шаблона.
- Обновите sitemap, если туда попадают архивные URL.
- Переобойдите сайт через Search Console и проверьте реакцию робота.
Если вы вносите код вручную, лучше не править functions.php активной темы, а вынести логику в небольшой mu-plugin или в собственный мини-плагин. Так настройка не слетит при обновлении темы.
Как проверить, что решение сработало
После внедрения откройте несколько страниц пагинации вручную, например /category/news/page/2/. В исходном коде страницы должен появиться meta robots с noindex. Если используете фильтр wp_robots, проверьте именно HTML-вывод, а не только настройки в админке.
Дальше проверьте:
- страница пагинации доступна по URL и листается дальше;
- в исходнике есть
noindex, follow; - canonical не указывает на случайный URL;
- в Search Console новые URL с пагинацией не начинают индексироваться;
- старые URL постепенно уходят из индекса после переобхода.
Если страница закрыта, но продолжает появляться в индексе, это нормально на коротком промежутке. Поисковику нужно время, чтобы переобойти URL и обновить статус.
Частые ошибки и как их исправить
Ставят Disallow и ждут удаления из индекса
Это самая частая ошибка. Disallow в robots.txt запрещает обход, но не гарантирует удаление уже известных страниц. Для удаления нужен noindex или корректная обработка через SEO-плагин.
Закрывают пагинацию и ломают внутреннюю навигацию
Если убрать ссылки на страницы архива, пользователь потеряет доступ к старым материалам. Пагинация должна оставаться рабочей. Закрывать нужно только индексацию, а не сам переход по ссылкам.
Ставят noindex на весь архив без проверки
Иногда закрывают не только пагинацию, но и первую страницу рубрики, которая может быть важной посадочной. Перед изменениями проверьте, какие архивы реально нужны в поиске.
Не проверяют canonical
Если canonical настроен криво, поисковик может игнорировать ваши сигналы. На пагинации canonical должен быть логичным и стабильным, иначе вы получите путаницу между первой страницей архива и последующими страницами.
Безопасность и производительность
Сама настройка noindex почти не влияет на скорость сайта, но код лучше добавлять аккуратно. Не вставляйте условие в несколько мест сразу: если фильтр будет продублирован в теме и в плагине, можно получить конфликтный вывод robots-мета.
Если на сайте уже есть SEO-плагин, сначала проверьте его возможности. Иногда проще настроить архивы там, чем поддерживать собственный код. Если нужен более широкий контроль над дублями, мета-данными и технической чисткой, у Clearfy Pro есть инструменты для таких задач: https://wpshop.ru/plugins/clearfy?utm_source=wpcorp.ru&utm_medium=article&utm_campaign=kak-zapretit-indeksaciyu-stranic-paginacii-v-wordpress.
Что делать, если пагинация уже в индексе
Если URL с /page/2/ уже попали в поиск, одного изменения настроек мало. Нужно дождаться переобхода и проверить, не остались ли ссылки на эти страницы в sitemap, хлебных крошках и внутренних блоках. Иногда именно внутренние ссылки удерживают пагинацию в индексе дольше, чем ожидается.
Для ускорения процесса полезно:
- отправить важные страницы на переобход в Search Console;
- убедиться, что на пагинации стоит
noindex, follow; - не блокировать URL в robots.txt до того, как поисковик увидит
noindex; - проверить, нет ли внешних ссылок на архивные страницы.
Если нужна точечная техническая чистка сайта без ручной правки десятка файлов, сначала настройте правила на уровне WordPress, а уже потом трогайте robots.txt и шаблоны. Так проще отследить, что именно сработало.