Если в Search Console растут страницы с одинаковыми title и description, а в индексе появляются архивы, вложения и служебные URL, проблема обычно не в «плохом SEO», а в настройках WordPress и теме. Дубли в WordPress появляются предсказуемо: один и тот же контент доступен по нескольким адресам, а поисковик выбирает не тот URL, который вы хотите видеть в выдаче.
Ниже — рабочая схема: как диагностировать источник дублей, что закрывать через настройки, что править кодом и как проверить, что после изменений индекс действительно стал чище.
Какие дубли WordPress встречаются чаще всего
Сначала важно понять, что именно дублируется. В WordPress это обычно не «одна и та же статья два раза», а разные URL с одинаковым или почти одинаковым содержимым. Типовые сценарии:
- архивы рубрик, меток и авторов показывают тот же набор записей;
- страницы вложений медиафайлов индексируются отдельно, хотя на них почти нет контента;
- пагинация архивов создает много слабых страниц;
- страницы с параметрами в URL попадают в индекс;
- HTTP/HTTPS и www/non-www живут как отдельные адреса, если редиректы настроены криво;
- в теме выводятся дублирующиеся title, canonical или meta robots.
Диагностика: где искать источник дублей
Начинать лучше не с плагинов, а с проверки того, какие URL уже видит поисковик и что реально отдает сайт. Это экономит время: иногда проблема в одном шаблоне архива, а не во всей установке.
Проверьте индексацию в Search Console
Откройте отчет по страницам и посмотрите, какие типы URL попали в индекс: вложения, теги, архивы автора, пагинация, параметры. Если в списке много страниц без трафика и с одинаковыми заголовками, это уже повод закрывать их от индексации или менять логику вывода.
Сравните HTML нескольких типов страниц
Посмотрите исходный код у:
- обычной записи;
- архива рубрики;
- страницы вложения;
- страницы пагинации;
- страницы с параметром в URL, если такие есть.
Ищите три вещи: <title>, rel="canonical" и meta name="robots". Если canonical указывает на саму страницу, а страница вам не нужна в индексе, это уже ошибка настройки.
Быстрая проверка через curl
Если нужен быстрый технический осмотр, можно посмотреть заголовки и часть HTML без браузера:
curl -I https://example.com/wp-content/uploads/2024/01/image.jpgcurl -s https://example.com/category/news/page/2/ | grep -iE 'canonical|robots|title'Это не заменяет полноценный аудит, но помогает быстро понять, есть ли canonical и не отдает ли страница неожиданный статус.
Пошаговое решение: что закрывать, а что оставлять
Ниже — практичный порядок. Он подходит для большинства сайтов на WordPress, где дубли появились из-за стандартных архивов и медиафайлов.
1. Закройте страницы вложений
Страницы attachment почти всегда бесполезны для поиска: на них либо одна картинка, либо минимальный текст. Если тема или плагин не делают редирект на файл или родительскую запись, такие URL лучше закрыть.
Если вы используете SEO-плагин, проверьте, есть ли в нем настройка редиректа вложений на родительский пост. Если нет — можно сделать это кодом:
add_action('template_redirect', function () {
if (is_attachment()) {
$parent = wp_get_post_parent_id(get_queried_object_id());
if ($parent) {
wp_redirect(get_permalink($parent), 301);
exit;
}
wp_redirect(home_url('/'), 301);
exit;
}
});Это решение не универсальное, но для большинства контентных сайтов оно лучше, чем индексируемые attachment-страницы.
2. Уберите из индекса служебные архивы, если они не нужны
Архивы авторов, меток и дат часто создают дубли или почти пустые страницы. Если сайт ведется одним автором, архив автора обычно не нужен. Если метки используются хаотично, они тоже быстро превращаются в мусорный слой.
Варианты:
- отключить архивы в SEO-плагине;
- оставить архивы, но поставить
noindex,follow; - закрыть их через
robots.txtтолько в редких случаях, когда это действительно нужно.
Важно: robots.txt не убирает URL из индекса, если они уже известны поисковику. Для уже проиндексированных страниц нужен noindex или редирект.
3. Настройте canonical на страницах с пагинацией и фильтрацией
Пагинация архивов сама по себе не ошибка, но часто тема ставит canonical на первую страницу архива даже там, где каждая страница содержит уникальный набор записей. Это спорная практика: для некоторых сайтов она допустима, для других ломает обход и индексацию.
Проверьте, как именно ведет себя ваша тема. Если canonical у страниц /page/2/, /page/3/ и так далее указывает на первую страницу без причины, это стоит пересмотреть. Иногда лучше оставить самоссылочный canonical, а не «схлопывать» все страницы в одну.
4. Уберите дубли title и H1 в шаблонах
Частая ошибка — когда архив рубрики, метки и главная категория выводят одинаковый заголовок, а title формируется по одному шаблону без контекста. В результате поисковик видит несколько страниц с почти одинаковыми сигналами.
Проверьте, что у архивов есть различимые title и H1. Например, для рубрики можно использовать название + уточнение, а для меток — либо закрыть их, либо сделать отдельную логику.
Что лучше: плагин, настройки темы или код
Если задача не разовая, а системная, полезно понимать компромиссы. Ниже — короткое сравнение подходов.
| Подход | Когда подходит | Минус |
|---|---|---|
| SEO-плагин | Нужно быстро закрыть архивы, задать noindex, управлять canonical | Зависимость от интерфейса и логики плагина |
| Код в теме/плагине | Нужна точечная логика для attachment, архивов, редиректов | Требует тестирования после обновлений |
| Настройки сервера/robots | Нужно убрать технический шум, ограничить обход | Не решает уже проиндексированные дубли |
Если на сайте уже есть технический мусор, удобно сначала навести порядок через SEO-настройки, а потом добить точечные случаи кодом. Например, в Clearfy Pro есть инструменты для чистки сайта и отключения лишних сущностей, но использовать их стоит только после проверки, что конкретно у вас дублируется.
Проверка результата после внедрения
После правок не ограничивайтесь визуальной проверкой. Нужно убедиться, что поисковый робот видит именно то, что вы задумали.
- Откройте несколько проблемных URL и проверьте
canonicalиrobotsв исходном коде. - Проверьте HTTP-статус: редирект должен быть
301, а не302. - В Search Console отправьте на переобход несколько страниц, которые вы меняли.
- Сравните количество страниц в отчете по индексированию до и после, но не ждите мгновенного обновления.
- Проверьте, не исчезли ли из индекса нужные страницы вместе с мусорными.
Если после изменений в индексе остались старые URL, это не всегда ошибка. Поисковик может держать их некоторое время, особенно если на них есть внешние ссылки или внутренние переходы.
Частые ошибки и как их исправить
Закрыли страницу в robots.txt и ждете удаления из индекса
Это самая частая ошибка. Если URL уже в индексе, запрет обхода не гарантирует удаление. Сначала нужно дать поисковику увидеть noindex или редирект, а уже потом при необходимости ограничивать обход.
Ставите canonical на главную для всех архивов
Так делают, когда хотят «ускорить SEO», но в итоге поисковик теряет сигнал о структуре сайта. Canonical должен указывать на наиболее релевантную версию, а не просто на любую сильную страницу.
Редиректите все архивы на главную
Это грубое решение. Если архив реально полезен пользователю, лучше оставить его доступным и управлять индексацией. Массовый редирект на главную часто ухудшает поведенческие сигналы и ломает навигацию.
Отключаете теги без анализа внутренней перелинковки
Если теги используются как навигация и имеют трафик, их нельзя рубить вслепую. Сначала посмотрите, есть ли у них поисковые переходы и внутренние ссылки. Иногда достаточно noindex, а не полного удаления.
Чек-лист перед публикацией изменений
- Проверены attachment-страницы и настроен редирект.
- Определено, нужны ли архивы авторов, дат и меток.
- На проблемных шаблонах проверены canonical и robots.
- Нет случайных
noindexна важных страницах. - Редиректы работают по
301, без цепочек. - Внутренние ссылки не ведут на закрытые URL.
- После правок выполнена проверка в Search Console.
Безопасность и производительность: что не стоит ломать
Любая чистка индекса должна быть аккуратной. Не отключайте системные архивы и не переписывайте canonical без понимания, как тема строит шаблоны. Если правите кодом, лучше вынести изменения в дочернюю тему или небольшой mu-plugin, а не в файлы основной темы. Так обновление не сотрет вашу логику.
Если на сайте много технических дублей, иногда полезно сначала привести в порядок базовую SEO-гигиену: убрать лишние архивы, отключить мусорные сущности, проверить медиа-страницы и только потом смотреть на расширенные настройки. Для этого удобнее использовать один понятный инструмент, чем держать несколько плагинов, которые конфликтуют между собой.
В итоге задача сводится не к «удалению дублей вообще», а к точной настройке того, какие URL должны жить, индексироваться и передавать вес. На WordPress это почти всегда решается комбинацией шаблонов, SEO-настроек и пары точечных правок в коде.