Как удалить дубли страниц в WordPress и оставить одну каноническую версию

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

Ниже разберём, как быстро понять, где именно у вас дубли, и что делать: когда достаточно canonical, когда нужен 301-редирект, а когда лучше закрыть страницу от индексации или вообще убрать её из генерации.

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

Первый признак — в поиске всплывают не те URL: с параметрами, с /page/2/, с /amp/, с вложенными архивами или с разными вариантами главного домена. Второй признак — в Google Search Console или Яндекс Вебмастере одна и та же страница фигурирует под несколькими адресами. Третий — в отчётах краулинга много одинаковых title, description и H1.

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

  • откройте один и тот же материал с http и https;
  • проверьте вариант с www и без www;
  • сравните URL записи и её архивов: категория, тег, автор, дата;
  • посмотрите, не индексируются ли страницы с параметрами вроде ?utm_source=;
  • проверьте пагинацию архивов и поиск по сайту.

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

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

СценарийЧто происходитЧто обычно делать
HTTP и HTTPSОдин и тот же контент доступен по двум протоколамНастроить 301 на основной вариант
www и без wwwСайт открывается в двух доменных версияхВыбрать одну версию и склеить редиректом
Параметры UTMОдна страница получает много URL с параметрамиОставить canonical на чистый URL, иногда закрыть параметры от индексации
Архивы таксономийОдинаковые фрагменты текста дублируются в категориях и тегахСократить архивы, убрать лишние таксономии, при необходимости noindex
ПагинацияСтраницы /page/2/, /page/3/ содержат повторяющиеся блокиПроверить canonical и структуру архива

Пошаговое решение: что делать в правильном порядке

1. Сначала выберите один основной URL

До любых правок нужно зафиксировать, какой вариант считается главным: https, без www, без лишних слэшей в середине, с понятной структурой постоянных ссылок. Если этого не сделать, редиректы и canonical будут конфликтовать между собой.

2. Настройте 301-редирект для технических дублей

Если у вас доступны настройки сервера, лучше решать на уровне веб-сервера. Для Apache это обычно .htaccess. Пример для принудительного перехода на HTTPS и без www:

RewriteEngine On

RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.ru$ [NC]
RewriteRule ^(.*)$ https://example.ru/$1 [R=301,L]

Если сайт работает на Nginx, аналогичная логика настраивается в конфигурации сервера, а не в WordPress. Это важно: редирект на уровне PHP или плагина работает, но обычно медленнее и хуже контролируется.

3. Проверьте canonical на страницах, где редирект неуместен

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

Если вы пишете код в теме или плагине, canonical можно задать через фильтр wpseo_canonical в Yoast SEO или через стандартную логику темы, если SEO-плагина нет. Но не стоит дублировать canonical вручную в шаблоне, если SEO-плагин уже делает это сам.

add_filter('wpseo_canonical', function ($canonical) {
    if (is_home()) {
        return home_url('/');
    }

    if (is_singular()) {
        return get_permalink();
    }

    return $canonical;
});

Этот пример не «лечит» все дубли, а лишь показывает принцип: canonical должен указывать на один стабильный URL, а не на текущий вариант с параметрами.

4. Уберите лишние архивы и служебные страницы из индекса

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

Практический подход такой:

  • архивы тегов оставить только если они реально помогают навигации;
  • пустые или слабые архивы закрыть от индексации;
  • страницы внутреннего поиска не индексировать;
  • служебные параметры не плодить в ссылках без необходимости.

5. Исправьте внутренние ссылки

Очень частая ошибка — редиректы настроены, но меню, хлебные крошки, кнопки и карточки продолжают вести на старые URL. Поисковик всё равно будет тратить краулинговый бюджет на лишние адреса. После настройки канонического адреса пройдитесь по шаблонам темы и убедитесь, что везде используется home_url(), get_permalink() и другие штатные функции WordPress, а не захардкоженные ссылки.

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

Если проблема ограничена одним-двумя типами дублей, код в теме или небольшом mu-plugin часто надёжнее. Если же на сайте много архивов, параметров и технических исключений, удобнее взять инструмент, который закрывает сразу несколько задач: canonical, noindex, очистку дублей, управление robots.txt и лишними мета-тегами.

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

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

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

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

Что проверить технически

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

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

curl -I https://example.ru/staryj-url/
curl -I https://example.ru/

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

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

Редирект и canonical указывают в разные стороны

Например, старая версия страницы редиректит на новую, а canonical на новой странице всё ещё ведёт на старую. Это ломает логику склейки. Исправление простое: редирект должен вести на основной URL, а canonical на целевом URL должен совпадать с ним.

Закрыли от индексации, но не убрали из навигации

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

Используют несколько SEO-плагинов одновременно

Два плагина, которые управляют canonical, robots meta и sitemap, почти гарантированно создадут конфликт. Оставьте один основной инструмент, а второй отключите или уберите его SEO-функции.

Путают дубли и похожие страницы

Не каждая похожая страница — дубль. Если у материалов разный смысл, разные заголовки и разная цель, не нужно склеивать их в один URL только ради «чистоты». В WordPress часто проблема не в контенте, а в технических копиях одного и того же материала.

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

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

Ещё несколько рабочих правил:

  • не плодите редиректы цепочками из трёх и более шагов;
  • не закрывайте от индексации всё подряд, если не понимаете, как это повлияет на обход сайта;
  • не меняйте структуру ссылок без карты редиректов;
  • после массовых правок очищайте кеш страницы и, если есть, объектный кеш;
  • проверяйте sitemap после изменения таксономий и архивов.

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

Как сделать мультиязычность в WordPress без плагинов: практическое руководство
15.09.2026
Как успешно использовать WPCommunity для создания форума на WordPress
03.10.2026
Как отключить XML sitemap в WordPress для ненужных типов страниц
30.08.2026
Как отключить отзывы на отдельных страницах WordPress: практическое руководство
03.10.2026
Как отключить автоматическое сохранение в WordPress без плагинов
30.09.2026
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше