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

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

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

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

Сначала стоит отличить нормальные архивы от технических дублей. В WordPress один и тот же материал может открываться по нескольким адресам: через категории, теги, авторские архивы, страницы вложений, параметры ?replytocom=, ?amp, UTM-метки и сортировки. Если контент на странице одинаковый, а URL разные — это уже кандидат на дубль.

Диагностика проблемы

Проверка начинается с простых вещей:

  • введите в браузере несколько вариантов URL одной страницы: с www и без, с http и https;
  • посмотрите исходный код страницы и найдите тег rel="canonical";
  • проверьте, не открываются ли страницы вложений вместо самой записи;
  • сравните заголовки и <title> у архивов категорий и тегов;
  • посмотрите отчёты в Google Search Console по страницам, исключённым из индекса как дубли или альтернативные страницы с каноническим тегом.

Если у вас есть доступ к краулеру вроде Screaming Frog, Sitebulb или аналогичному инструменту, выгрузите список URL с одинаковыми title, h1 и canonical. Это быстрее, чем искать вручную по сайту.

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

На практике почти всегда всплывает один из этих сценариев:

Источник дубляЧто происходитЧто делать
Страницы вложенийМедиафайл получает отдельную страницу без полезного контентаРедиректить на родительскую запись или закрыть от индексации
Архивы тегов и категорийОдинаковые записи доступны через несколько архивовОставить только нужные архивы, остальные закрыть или упростить
Параметры в URLОдна и та же страница открывается с разными query stringНастроить canonical и, где нужно, редиректы
Версии доменаhttp/https, www/non-wwwСделать один основной вариант через 301
Пагинация и сортировкаОдинаковые блоки контента на разных страницах архиваПроверить canonical и структуру архивов

Пошаговое решение: что исправлять в WordPress

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

1. Приведите сайт к одному основному адресу

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

Для Apache это обычно делается в .htaccess:

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

Для Nginx логика та же, но правило пишется в конфиге сервера. В WordPress это не заменяется настройкой в админке — редирект должен происходить до загрузки CMS.

2. Уберите страницы вложений из индекса

Страницы медиафайлов почти всегда бесполезны для поиска. Если тема или плагин не перенаправляет их автоматически, можно сделать это кодом. Ниже — безопасный вариант через template_redirect:

add_action('template_redirect', function () {
    if (is_attachment()) {
        $parent_id = wp_get_post_parent_id(get_the_ID());

        if ($parent_id) {
            wp_redirect(get_permalink($parent_id), 301);
            exit;
        }

        wp_redirect(home_url('/'), 301);
        exit;
    }
});

Этот код лучше добавить в мини-плагин или в functions.php дочерней темы, а не в родительскую тему.

3. Проверьте canonical на архивных страницах

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

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

4. Закройте лишние архивы и служебные страницы

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

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

5. Не плодите URL параметрами

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

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

Когда нужен редирект, а когда достаточно canonical

Редирект и canonical решают разные задачи. Редирект убирает дубль из обращения для пользователя и робота. Canonical сообщает поисковику, какую версию считать основной, но сам URL остаётся доступным.

Практическое правило такое:

  • 301-редирект — для дублей домена, страниц вложений, старых URL и явных технических копий;
  • canonical — для страниц с параметрами, пагинации, сортировки и похожих архивов;
  • noindex — для страниц, которые не должны попадать в поиск, но должны быть доступны пользователю.

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

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

  1. откройте старый URL и убедитесь, что он отдаёт 301, а не 302;
  2. посмотрите, что конечный адрес совпадает с основным вариантом;
  3. проверьте canonical в исходном коде;
  4. прогоните сайт краулером и убедитесь, что одинаковые страницы больше не доступны по нескольким адресам;
  5. в Google Search Console отправьте на переобход важные URL и посмотрите, как меняется статус дублей.

Если используете командную строку на сервере, можно быстро проверить редирект так:

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

В ответе должен быть заголовок HTTP/2 301 или HTTP/1.1 301 Moved Permanently, а в Location — правильный канонический адрес.

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

Редирект сделан в несколько шагов

Если старый URL сначала уходит на промежуточный адрес, а потом ещё раз редиректится, это лишняя нагрузка и потеря времени. Сведите цепочку к одному 301-редиректу.

Canonical указывает на несуществующую или закрытую страницу

Такое бывает после смены структуры ссылок или удаления записей. Canonical должен вести на реально доступную страницу с кодом ответа 200.

Плагин SEO и тема выводят разные canonical

Иногда тема вставляет свой rel="canonical", а SEO-плагин — свой. В итоге в HTML два канонических адреса, и поисковик выбирает их не так, как вы ожидаете. Нужно оставить только один источник canonical.

Страницы тегов закрыли, но они всё ещё в индексе

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

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

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

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

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

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

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

Как использовать Transients API в WordPress для ускорения калькуляторов
27.09.2026
Как создать автоматические отчёты в WordPress с помощью WP-Cron и PHP
19.09.2026
Как найти и убрать дубли страниц в WordPress без потери индексации
16.08.2026
Как отключить архивы дат в WordPress без лишних дублей и просадок SEO
29.09.2026
Оптимизация выполнения PHP кода в WordPress: практические методы и примеры
25.09.2026
×

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

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

пишет статьи

готовит SEO

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

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