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

Если в Search Console растут «Просканировано, но не проиндексировано» или в индексе всплывают одинаковые страницы с разными URL, проблема часто не в контенте, а в структуре WordPress. Дубли появляются из-за архивов, пагинации, параметров сортировки, версий с www/non-www, а иногда — из-за темы или плагина, который генерирует несколько адресов для одного и того же материала.

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

Как понять, что у вас именно дубли, а не обычная проблема с индексацией

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

Типичные признаки

  • в индексе есть страницы с одинаковым title и description, но разными URL;
  • в отчётах Search Console много страниц с параметрами ?replytocom=, ?amp, ?utm_ или сортировкой;
  • один и тот же пост открывается и по адресу записи, и через архив рубрики, и через пагинацию;
  • в коде страницы встречается несколько rel="canonical" или каноникал указывает на другой URL;
  • в логах краулинга видно, что бот ходит по страницам, которые не должны быть самостоятельными.

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

  1. Откройте проблемный URL и сравните его с каноническим адресом в исходном коде страницы.
  2. Проверьте, не создаёт ли тема отдельные архивы для таксономий, автора, дат и поиска.
  3. Посмотрите, есть ли у сайта параметры, которые меняют контент, но не URL-структуру.
  4. Сравните заголовки ответа сервера для дублей и основной страницы.

Какие дубли в WordPress встречаются чаще всего

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

Источник дубляКак выглядитЧто делать
Архивы рубрик и метокОдинаковые записи доступны через разные спискиОставить архивы нужными, лишние закрыть или удалить
Пагинация/page/2/, /page/3/Не закрывать всё подряд, а проверить каноникал и индексацию
Параметры URL?sort=, ?filter=, ?replytocom=Склеить, убрать из индексации или запретить генерацию
Версии доменаhttp/https, www/non-wwwНастроить единый редирект 301
Печатные версии и AMPОтдельные URL с тем же контентомПроверить каноникал и необходимость отдельной версии

Пошаговое решение: как убрать дубли без лишнего риска

Логика простая: сначала убираем технический мусор, потом проверяем каноникал, и только после этого трогаем robots.txt или правила индексации. Если начать с жёсткой блокировки, можно случайно скрыть нужные страницы.

Шаг 1. Нормализуйте основной адрес сайта

Убедитесь, что сайт открывается только в одном варианте: с HTTPS и одним хостом. Это базовая точка, без которой дальше будет путаница в ссылках и каноникалах.

Проверьте:

  • https://example.ru и https://www.example.ru должны вести на один вариант;
  • http должен редиректить на https;
  • внутренние ссылки в теме и контенте должны быть уже в финальном виде.

Шаг 2. Уберите генерацию лишних архивов в теме

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

<?php
add_action('template_redirect', function () {
    if (is_author() || is_date() || is_tag()) {
        wp_redirect(home_url('/'), 301);
        exit;
    }
});

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

Шаг 3. Задайте канонический URL там, где есть варианты одной страницы

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

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

Шаг 4. Закройте параметры, которые не должны индексироваться

Параметры вида ?replytocom= и служебные query string часто создают мусорные URL. Их не нужно превращать в отдельные страницы. Если параметр не меняет смысл контента, он не должен жить в индексе.

<?php
add_filter('redirect_canonical', function ($redirect_url, $requested_url) {
    if (strpos($requested_url, 'replytocom=') !== false) {
        return remove_query_arg('replytocom', $requested_url);
    }
    return $redirect_url;
}, 10, 2);

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

Шаг 5. Проверьте robots.txt и мета robots

Не путайте запрет индексации и удаление дубля. Если страница уже существует и на неё ведут ссылки, Disallow в robots.txt не убирает её из индекса мгновенно. Для дублей чаще нужен noindex или редирект, а не только robots.

Хорошая практика:

  • закрывать от индексации служебные страницы через noindex, follow;
  • не блокировать в robots то, что нужно поисковику для понимания каноникала;
  • не смешивать редирект, noindex и Disallow без понимания порядка обработки.

Когда лучше править код, а когда — использовать плагин

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

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

Если нужен более системный контроль дублей и чистка технических страниц, можно посмотреть на Clearfy Pro: https://wpshop.ru/plugins/clearfy. Но даже в этом случае сначала проверьте, какие именно URL создают проблему.

Как проверить, что решение сработало

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

Чек-лист проверки

  • основной URL отдаёт 200 OK и правильный canonical;
  • дубли либо редиректят на основной адрес, либо закрыты от индексации;
  • в исходном коде нет нескольких каноникалов;
  • страницы с параметрами не создают отдельные записи в индексе;
  • в Search Console уменьшается число страниц с одинаковым содержимым;
  • внутренние ссылки ведут только на один вариант URL.

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

curl -I https://example.ru/sample-page/

Смотрите на статус ответа, Location при редиректе и наличие заголовков, которые могут конфликтовать с каноникалами. Если у вас есть доступ к Search Console, откройте проверку URL и сравните выбранный Google канонический адрес с вашим.

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

Закрыли всё в robots.txt и ждёте исчезновения дублей

Это частая ошибка. Если URL уже в индексе, одного запрета в robots недостаточно. Сначала нужен редирект, каноникал или noindex, а затем уже можно ограничивать обход.

Редиректите архивы на главную без анализа

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

Меняете каноникал, но не убираете внутренние ссылки на дубли

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

Оставляете параметры UTM в индексируемых ссылках

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

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

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

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

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

Главная идея простая: не пытайтесь лечить все дубли одним правилом. Сначала найдите источник, потом решите, что должно редиректить, что должно быть noindex, а что вообще не должно генерироваться на сайте.

Как закрыть от индексации страницы поисковой выдачи в WordPress
25.08.2026
Как найти и убрать дубли страниц в WordPress без потери индексации
26.09.2026
Как добавить собственное поле виджета в административную панель WordPress
29.09.2026
Как автоматизировать создание резервных копий в WordPress
02.10.2026
Как избежать конфликтов между плагинами в WordPress: практические методы и примеры решения
13.09.2026

Развитие бизнеса вокруг WordPress: современные решения и подробные руководства.