Если в Search Console всплывают страницы вида /page/2/, /page/3/ и похожие URL с теми же заголовками и мета-описаниями, проблема обычно не в «плохом SEO», а в типичной настройке WordPress. Пагинация сама по себе нормальна, но при неправильной индексации она создаёт дубли, размывает сигналы и мешает поисковику понять, какая страница основная.
Ниже разберём рабочую схему: что именно проверить, где править canonical и robots, когда достаточно плагина, а когда лучше добавить код в тему или mu-plugin.
Когда пагинация становится SEO-проблемой
Дубли чаще появляются не на архивных страницах как таковых, а в сочетании нескольких факторов: одинаковые title и description на всех страницах архива, слабый или отсутствующий canonical, а иногда ещё и индексация параметров сортировки или фильтрации. В итоге поисковик видит много похожих URL и не всегда выбирает нужный.
Типичный сценарий:
- страница рубрики
/category/news/; - страница 2 этой рубрики
/category/news/page/2/; - у обеих одинаковый title и description;
- canonical указывает на саму страницу, но контент на второй странице не несёт самостоятельной ценности;
- в индексе копятся лишние URL.
Что считать нормой, а что — дублем
Если у вас обычный блог или каталог записей, страницы пагинации нужны для пользователей и для обхода роботом. Проблема не в том, чтобы «запретить всё подряд», а в том, чтобы не допустить индексации мусорных вариантов: страниц поиска, фильтров, параметров сортировки и служебных URL.
Для пагинации чаще всего достаточно оставить доступ для обхода, но не делать её приоритетной для индексации. Это особенно важно, если на сайте много архивов и слабая уникализация метаданных.
Диагностика: что проверить до правок
Перед изменениями откройте несколько URL вручную и посмотрите исходный код страницы. Важны три вещи: canonical, robots meta и заголовки, которые генерирует тема или SEO-плагин.
- Есть ли на странице
<link rel="canonical" ...>; - Не стоит ли на пагинации
noindexтам, где это не нужно; - Не дублируются ли title и description между страницами архива;
- Не создаёт ли плагин фильтров дополнительные URL с параметрами;
- Не закрыты ли случайно нужные страницы в
robots.txt.
Если у вас установлен SEO-плагин, сначала проверьте его настройки. Часто проблема решается без кода: плагин уже умеет задавать canonical для архивов и управлять индексированием пагинации.
Пошаговое решение: как убрать дубли из пагинации
Шаг 1. Оставьте canonical на саму страницу пагинации
Для обычных архивов canonical должен указывать на текущий URL страницы, а не на первую страницу архива. Иначе поисковик может игнорировать содержимое страниц 2, 3 и дальше, даже если они нужны для обхода.
Если тема или плагин ломают canonical, можно принудительно задать его через фильтр WordPress. Пример ниже подходит для записи в functions.php дочерней темы или, что безопаснее, в отдельный mu-plugin.
<?php
add_filter( 'get_canonical_url', function( $canonical, $post ) {
if ( is_paged() ) {
return $canonical;
}
return $canonical;
}, 10, 2 );Этот пример сам по себе ничего не меняет, но показывает точку вмешательства. На практике чаще проблема не в WordPress core, а в SEO-плагине или кастомной теме, которая подменяет canonical на архивных страницах. Тогда править нужно именно источник конфликта.
Шаг 2. Закройте от индексации служебные архивы, а не всю пагинацию
Не стоит массово ставить noindex на все страницы пагинации без анализа. Это может ухудшить обход сайта. Гораздо полезнее закрыть:
- страницы поиска;
- архивы с параметрами сортировки;
- фильтры, которые создают дубли;
- внутренние страницы с пустым или почти пустым контентом.
Если нужен точечный запрет для страниц поиска, используйте фильтр wp_robots:
<?php
add_filter( 'wp_robots', function( $robots ) {
if ( is_search() ) {
$robots['noindex'] = true;
$robots['nofollow'] = true;
}
return $robots;
} );Для пагинации такой подход применяйте только если вы точно понимаете последствия. На многих сайтах лучше оставить пагинацию доступной для обхода, но не усиливать её внутренними ссылками и не дублировать метаданные.
Шаг 3. Уникализируйте title и description для архивов
Если у всех страниц рубрики одинаковый title, поисковику сложнее различать их назначение. Минимум, который стоит сделать: добавить номер страницы в title на пагинации. Это не решает всё, но снижает путаницу.
<?php
add_filter( 'document_title_parts', function( $parts ) {
if ( is_paged() ) {
$paged = max( 2, (int) get_query_var( 'paged' ) );
$parts['title'] .= ' — страница ' . $paged;
}
return $parts;
} );Если title формирует SEO-плагин, править нужно его шаблон, а не дублировать логику в теме. Иначе получите конфликт фильтров и непредсказуемый результат.
Шаг 4. Уберите лишние параметры из URL
Частая причина дублей — не сама пагинация, а параметры в адресе: ?orderby=, ?filter=, ?utm_ и похожие. Для них нужна отдельная стратегия: либо canonical на чистый URL, либо серверная обработка, либо запрет на генерацию таких ссылок в интерфейсе.
Если параметры создаёт тема или кастомный фильтр, проверьте, можно ли строить ссылки через add_query_arg() только для реального интерфейса, а не для индексации.
Сравнение подходов: плагин, код или правка темы
| Подход | Когда подходит | Минус |
|---|---|---|
| SEO-плагин | Если уже используется и умеет управлять canonical/robots | Легко получить конфликт с темой или другим плагином |
| Код в mu-plugin | Если нужна точечная и стабильная логика | Нужно аккуратно тестировать после обновлений |
| Правка темы | Если проблема только в шаблоне вывода | Слетит при обновлении без дочерней темы |
Для продакшена чаще всего лучший вариант — mu-plugin. Он не зависит от темы и не теряется при обновлении.
Проверка результата после внедрения
После правок не ограничивайтесь просмотром страницы в браузере. Проверьте именно то, что видит поисковик.
- Откройте исходный код страницы пагинации и убедитесь, что canonical указывает на нужный URL.
- Проверьте, что на страницах поиска и фильтров стоит
noindex, если это задумано. - Прогоните несколько URL через инструмент проверки в Search Console.
- Сравните заголовки и description у первой и второй страницы архива.
- Посмотрите серверные логи или отчёт обхода, если нужно понять, не потерял ли робот доступ к важным страницам.
Если у вас есть доступ к CLI, можно быстро проверить, не сломался ли HTML-вывод после правок темы:
wp eval 'echo get_pagenum_link(2);'Команда не решает SEO-задачу сама по себе, но помогает убедиться, что WordPress генерирует ожидаемый URL для второй страницы архива.
Частые ошибки и как их исправить
Ставят noindex на всю пагинацию без разбора
Это распространённая реакция на дубли, но она не всегда полезна. Если у вас большой архив, поисковику всё равно нужен путь к более глубоким страницам. Закрывать стоит не всё подряд, а именно мусорные URL.
Canonical ведёт на первую страницу архива
Такой вариант часто ломает смысл пагинации. Пользователь открывает страницу 3, а поисковик получает сигнал, что канонична страница 1. В результате страницы глубже могут выпадать из обхода или индексироваться нестабильно.
Title и description одинаковые на всех страницах
Даже если canonical настроен правильно, одинаковые метаданные создают лишний шум. Добавьте номер страницы или другой осмысленный маркер, если это архив, а не посадочная страница.
Параметры фильтрации не контролируются
Если на сайте есть сортировка, фильтры или поиск по тегам, они часто создают больше дублей, чем сама пагинация. В таком случае сначала чистят параметры, а уже потом трогают архивы.
Практические советы по безопасности и производительности
Не вносите такие правки напрямую в родительскую тему. Для кода используйте дочернюю тему или mu-plugin. Это снижает риск потерять изменения после обновления и упрощает откат.
Если на сайте уже стоит набор SEO и технических оптимизаций, имеет смысл проверить, не делает ли он часть работы за вас. Например, в Clearfy Pro есть инструменты для чистки сайта и удаления части технического шума, но перед включением любых опций всё равно смотрите, что именно меняется в HTML и robots.
- сделайте бэкап перед изменениями;
- проверьте canonical на нескольких типах архивов;
- не закрывайте от индексации нужные страницы пагинации без анализа;
- не смешивайте логику темы, SEO-плагина и кастомного кода в одном месте;
- после правок сравните исходный код до и после.
Если после внедрения дубли не исчезают, проблема, скорее всего, не в пагинации как таковой, а в генерации URL, шаблонах архивов или параметрах фильтрации. В этом случае нужно идти от источника, а не пытаться лечить всё одним noindex.