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

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

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

Когда дубли пагинации действительно мешают

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

  • /category/news/ и /category/news/page/2/;
  • /tag/seo/ и /tag/seo/page/2/;
  • страницы с параметрами сортировки вроде ?orderby=, ?filter=, ?amp;
  • архивы автора, которые дублируют категории по смыслу и почти не несут уникального контента;
  • страницы пагинации, где canonical указывает не на саму страницу, а на первую страницу архива без логики.

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

Диагностика: как понять, что проблема именно в пагинации

Сначала проверьте, как сайт отдает заголовки и canonical. Откройте несколько URL вручную и посмотрите исходный код страницы. На страницах пагинации canonical должен быть предсказуемым: либо на саму страницу, либо на первую страницу архива, если это так задумано вашей SEO-логикой. Главное — чтобы не было хаоса.

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

  • одинаковый title и description на разных страницах архива;
  • canonical, который всегда указывает на первую страницу, даже когда это не нужно;
  • страницы с параметрами, которые индексируются и создают копии;
  • дубли в отчётах Google Search Console по страницам с параметрами и архивам;
  • несколько URL, ведущих на один и тот же список записей.

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

Сравнение подходов: плагин, код или правка SEO-настроек

ПодходКогда подходитПлюсМинус
SEO-плагинЕсли нужно быстро закрыть часть архивов и настроить canonical без кодаМеньше ручной работыНе всегда хватает гибкости для сложных архивов
Код в теме или mu-pluginЕсли нужно точечно управлять canonical, robots и параметрамиТочный контрольНужно тестировать после обновлений темы
Только robots.txtЕсли нужно закрыть от обхода технические URLПросто внедритьНе решает проблему canonical и не убирает уже известные URL из индекса

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

Пошаговое решение для WordPress

1. Уберите лишние параметры из индексации

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

На уровне темы или небольшого плагина можно добавить noindex для страниц с параметрами. Пример ниже не ломает саму пагинацию, а только снижает риск индексации мусорных URL:

add_action('wp_head', function () {
    if (is_admin()) {
        return;
    }

    $params = array('orderby', 'filter', 'sort', 'amp');

    foreach ($params as $param) {
        if (isset($_GET[$param]) && $_GET[$param] !== '') {
            echo "<meta name=\"robots\" content=\"noindex,follow\" />\n";
            break;
        }
    }
}, 1);

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

2. Проверьте canonical на страницах пагинации

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

Пример фильтра для изменения canonical на архивных страницах пагинации:

add_filter('get_canonical_url', function ($canonical, $post) {
    if (is_archive() || is_home()) {
        $paged = max(1, (int) get_query_var('paged'));

        if ($paged > 1) {
            return get_pagenum_link($paged);
        }
    }

    return $canonical;
}, 10, 2);

Этот код стоит применять только после проверки текущей логики темы и SEO-плагина. Если у вас уже есть корректный canonical, не дублируйте логику поверх него.

3. Закройте от индексации технические архивы, если они не несут ценности

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

Для точечной правки можно использовать условие в wp_head:

add_action('wp_head', function () {
    if (is_author() || is_tag()) {
        echo "<meta name=\"robots\" content=\"noindex,follow\" />\n";
    }
}, 1);

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

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

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

  • Откройте /page/2/ и посмотрите исходный код: есть ли нужный canonical и нет ли лишнего noindex.
  • Проверьте несколько URL с параметрами: они не должны конкурировать с основными архивами.
  • В Google Search Console посмотрите отчёты по страницам с дублями и исключённым URL.
  • Если используете кэш, очистите его после изменений, иначе будете проверять старую версию шаблона.

Хороший практический тест — сравнить исходный код первой и второй страницы архива. Если у них одинаковый title, description и canonical без причины, проблема ещё не решена.

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

Ставят noindex на всю пагинацию

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

Меняют canonical на первой странице везде подряд

Такой canonical иногда выглядит логично, но для пагинации он не всегда подходит. Если у вас много материалов и важна навигация по архиву, текущая страница должна оставаться понятной для поисковика. Иначе в индексе останется только первая страница, а остальные будут игнорироваться.

Забывают про кэш

После правок на сайте может продолжать отдаваться старый canonical или старый meta robots из кэша страницы, CDN или object cache. Перед проверкой очистите все уровни кэширования, включая серверный, если он есть.

Не учитывают параметры URL

Если на сайте есть фильтры, сортировки или AMP-версии, дубли часто идут не от самой пагинации, а от комбинации параметров. В этом случае нужно отдельно разбирать каждый тип URL, а не лечить только архивы.

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

Если вы добавляете код в тему, лучше вынести его в небольшой mu-plugin. Тогда он не исчезнет при смене темы и будет проще контролироваться в репозитории. Для правок canonical и robots это особенно удобно.

Не ставьте тяжёлые проверки в wp_head без необходимости. Условие должно быть простым: проверка архивного типа, наличие параметра, вывод одного мета-тега. Для таких задач не нужен сложный запрос к базе.

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

Для сайтов, где нужно быстро убрать технические дубли и не собирать это вручную, можно посмотреть на инструменты уровня Clearfy Pro: у него есть функции для работы с дублями и чисткой технических URL, но перед включением любых автоматических правил всё равно стоит проверить, что именно будет закрыто. Ссылка: Clearfy Pro.

Мини-чек-лист перед публикацией изменений

  • проверен canonical на первой и второй странице архива;
  • технические параметры URL закрыты или помечены как noindex;
  • архивы авторов и теги не создают лишние дубли;
  • кэш очищен на всех уровнях;
  • страницы пагинации открываются без 404 и без циклов редиректов;
  • в Search Console нет резкого роста исключённых URL из-за ошибки в шаблоне.

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

Как отключить AJAX Add to Cart на страницах магазина в WooCommerce
10.08.2026
Как использовать внешние библиотеки в WordPress с примерами
26.09.2026
Как разделить базу данных WordPress по таблицам для улучшения производительности
18.09.2026
WordPress: разделение кода для разных устройств — практические решения
29.09.2026
Как убрать дубли страниц пагинации в WordPress без потери индексации важных разделов
23.08.2026