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

Дубли в WordPress обычно появляются не из-за одной ошибки, а из-за набора мелких настроек: архивы, теги, пагинация, версии с параметрами, страницы автора, поиск, вложения, HTTP/HTTPS и www/non-www. Пока сайт небольшой, это почти незаметно. На проекте с десятками и сотнями страниц дубли начинают размывать сигналы для поисковика и усложняют диагностику в Search Console.

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

Где в WordPress чаще всего появляются дубли

Сначала важно понять, что именно считать дублем. Не каждая похожая страница — проблема. Опасны ситуации, когда один и тот же контент доступен по нескольким URL, а поисковик может выбрать не тот адрес для индексации.

Типовые источники дублей

  • архивы категорий и тегов, если они дублируют друг друга по смыслу;
  • страницы автора, даты и вложений, когда они не несут самостоятельной ценности;
  • пагинация архивов и параметр ?paged=;
  • страницы с GET-параметрами сортировки, фильтров, UTM и внутренних трекинговых меток;
  • версии сайта с www и без www, а также с http и https;
  • дубли из-за плагинов кэша, которые не учитывают каноникал или отдают разные версии HTML.

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

Диагностика: как быстро найти реальные дубли

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

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

  1. Отчёт «Страницы» в Google Search Console: ищите дубли, канонические URL, страницы с параметрами и исключённые адреса.
  2. Результаты поиска по сайту через site:example.ru — не как точный инструмент, а как быстрый способ увидеть мусорные URL.
  3. Список URL в краулере вроде Screaming Frog или Sitebulb: сравните title, canonical, status code и indexability.
  4. Исходный код страниц: есть ли на них корректный rel="canonical".

Если в отчётах всплывают адреса вида /page/2/, ?replytocom=, ?utm_, /attachment/ или архивы таксономий без уникального контента, это уже конкретная точка для исправления.

Пошаговое решение: что закрывать, а что оставлять

Универсального рецепта нет. Сначала разделите URL на три группы: оставить в индексе, закрыть от индексации, удалить или перенаправить. Это проще, чем пытаться «запретить всё лишнее» одним правилом.

ПодходКогда подходитПлюсыМинусы
Плагин SEO/чисткиНужно быстро закрыть архивы, теги, автора, датыМеньше кода, проще поддержкаЗависимость от настроек плагина
Код в теме или mu-pluginНужна точечная логика для конкретного сайтаКонтроль и предсказуемостьНужно тестировать после обновлений
Комбинированный вариантЧасть дублей закрывает SEO-плагин, часть — кодГибкостьВажно не задублировать правила

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

Проверьте, что сайт открывается только в одной версии: либо https://example.ru, либо https://www.example.ru. На уровне WordPress это задаётся в Настройки → Общие, а на сервере — редиректом на единственный вариант.

Если этого не сделать, поисковик может видеть две копии одной и той же страницы. Особенно это заметно после миграций и смены SSL.

2. Закройте неценные архивы и системные страницы

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

Пример для functions.php или, лучше, для отдельного mu-plugin:

<?php
add_action('template_redirect', function () {
    if (is_attachment()) {
        $parent = wp_get_post_parent_id(get_the_ID());
        if ($parent) {
            wp_redirect(get_permalink($parent), 301);
            exit;
        }
    }
});

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

3. Уберите индексацию параметров и служебных URL

Параметры сортировки, фильтров и трекинга часто создают десятки дублей одной страницы. Самый безопасный путь — не пытаться закрыть их robots.txt, а не допускать их попадания в индекс и внутренние ссылки.

Минимальный пример: если на сайте есть страницы с параметрами, можно принудительно отдавать canonical на чистый URL:

<?php
add_filter('get_canonical_url', function ($canonical, $post) {
    if (is_singular() && !empty($_GET)) {
        return get_permalink($post);
    }
    return $canonical;
}, 10, 2);

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

4. Проверьте canonical и robots meta

На страницах, которые должны оставаться в индексе, canonical должен указывать на саму страницу или на её основную версию. На страницах, которые не нужны в поиске, лучше использовать noindex,follow, если при этом важно сохранить переходы по ссылкам.

Если используете SEO-плагин, проверьте, не конфликтует ли его canonical с тем, что добавляет тема или кастомный код. Два canonical в HTML — частая ошибка после доработок.

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

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

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

Чек-лист перед публикацией правок

  • основной домен открывается в одной версии и отдаёт 301 на канонический адрес;
  • в HTML каждой важной страницы есть один canonical;
  • архивы, которые не нужны в поиске, закрыты или удалены из индексации;
  • страницы вложений либо редиректят на родителя, либо имеют осмысленный контент;
  • параметры UTM и служебные query string не создают отдельные индексируемые страницы;
  • внутренние ссылки ведут на канонические URL без лишних параметров;
  • после правок нет цепочек редиректов и 404 на старых адресах.

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

Проверка должна быть не формальной, а по факту. Откройте несколько страниц из каждой группы и посмотрите исходный код: canonical должен быть один, robots meta — соответствовать задаче, а редиректы — вести сразу на нужный адрес.

Дальше проверьте HTTP-ответы. Для этого удобно использовать curl:

curl -I https://example.ru/attachment/sample-image/
curl -I https://example.ru/category/news/?utm_source=test

В ответе вы должны увидеть либо 301 на целевой URL, либо 200 с корректным canonical и без лишней индексации. Если страница всё ещё отдаёт 200 и попадает в индекс, значит правило не сработало или его перезаписывает другой плагин.

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

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

Ставят noindex на всё подряд

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

Путают редирект и canonical

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

Оставляют дубли из-за плагинов кэша

Некоторые плагины кэша отдают разные версии страниц для мобильных, авторизованных и неавторизованных пользователей. Это нормально, если кэш настроен корректно. Проблема начинается, когда canonical, заголовки и HTML различаются без причины. После обновления кэша обязательно перепроверьте исходный код и заголовки ответа.

Закрывают параметры в robots.txt

Для современных поисковых систем это не лучший способ борьбы с дублями. Если URL уже существует и где-то связан внутренними ссылками, robots.txt не решает проблему канонизации. Лучше убрать источник параметров, настроить canonical или редирект.

Что ещё стоит учесть для безопасности и производительности

Чем меньше лишних архивов и параметров генерирует сайт, тем проще его сканировать и тем меньше мусора попадает в логи и кэш. Это не только про SEO, но и про эксплуатацию: меньше страниц — меньше шансов на случайные дубли, устаревшие шаблоны и конфликтующие правила.

Если вы вносите правки в тему, не редактируйте родительскую тему напрямую. Используйте дочернюю тему или mu-plugin, чтобы обновление не затёрло изменения. Перед выкладкой на прод проверьте изменения на staging-окружении и сделайте резервную копию базы и файлов.

Если нужен более широкий набор технических правок без ручной сборки из десятка сниппетов, можно посмотреть на Clearfy Pro: он полезен именно там, где нужно убрать типовые дубли и лишние элементы, а не изобретать собственный комбайн на каждый сайт.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как создать автоматические задачи в WordPress на основе WP-Cron
14.09.2026
Как создать динамический виджет в WordPress с AJAX загрузкой контента
30.09.2026
Как создать собственный виджет WordPress: подробное руководство с примерами кода
21.09.2026
Как автоматизировать создание резервных копий WordPress с помощью WPMax
03.10.2026
Как установить уникальные правила robots.txt в WordPress без плагинов
21.09.2026
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее