На живом WordPress-сайте дубли чаще всего появляются не из-за контента, а из-за служебных архивов: страницы авторов, пустые рубрики, теги с одним материалом, архивы дат, а иногда и страницы пагинации внутри таксономий. В итоге поисковик тратит обход на слабые URL, а в индексе остаются страницы, которые не дают трафик и размывают релевантность.
Задача здесь не в том, чтобы «закрыть всё подряд», а в том, чтобы оставить полезные архивы и убрать те, что реально создают дубли или мусор. Ниже — рабочая схема: как диагностировать проблему, что закрывать через noindex, что лучше удалить из выдачи совсем, и как проверить, что после правок сайт не потерял нужные страницы.
Какие архивы чаще всего создают дубли
В WordPress одинаковый контент может появляться в нескольких местах: на записи, в архиве рубрики, в архиве тега, на странице автора и в архиве даты. Если тема дополнительно выводит похожие блоки «похожие записи» или анонсы без уникального текста, поисковик видит набор очень близких страниц.
Типовые проблемные сценарии
- архивы авторов на сайте с одним редактором или без смысла показывать автора в поиске;
- теги, которые дублируют рубрики по смыслу или созданы автоматически;
- пустые или почти пустые таксономии;
- архивы дат, если сайт не новостной и даты не несут самостоятельной ценности;
- страницы пагинации, где вторая и последующие страницы не содержат уникального контента;
- служебные архивы, которые открыты для обхода, но не нужны в поиске.
Диагностика: что именно закрывать, а что оставить
Перед правками нужно посмотреть не на теорию, а на фактическую структуру сайта. Откройте несколько архивов и проверьте три вещи: есть ли на странице уникальный текст, есть ли у неё поисковый смысл и не дублирует ли она другую страницу почти полностью.
Полезно пройтись по таким URL вручную:
/author/...;/category/...;/tag/...;/2026/08/или другой архив даты;- страницы пагинации вида
/page/2/.
Если архив пустой, содержит только список записей без поясняющего текста и не приносит переходов из поиска, его обычно имеет смысл закрывать от индексации. Если архив — важная посадочная страница по теме, лучше оставить его открытым и доработать контентом.
Что выбрать: плагин, код или ручную настройку
Для этой задачи есть три нормальных пути. Выбор зависит от того, насколько часто вы меняете структуру сайта и нужен ли точечный контроль.
| Подход | Когда подходит | Плюсы | Минусы |
|---|---|---|---|
| SEO-плагин | Если нужно быстро управлять индексированием без кода | Удобно, меньше риска ошибиться | Не всегда даёт точную настройку для отдельных архивов |
| Код в теме или мини-плагине | Если нужен контроль над конкретными архивами | Прозрачно, предсказуемо, без лишних зависимостей | Нужно аккуратно тестировать после обновлений |
| Комбинированный вариант | Если часть архивов закрывается плагином, а часть — кодом | Гибкость | Легко запутаться в правилах |
Если на сайте уже используется SEO-плагин, сначала проверьте, умеет ли он закрывать архивы авторов, дат и таксономий. Если такой настройки нет или она слишком грубая, проще добавить точечную логику через фильтры WordPress.
Пошаговое решение через код
Ниже пример, который добавляет noindex, follow для архивов авторов, дат и тегов, если вы хотите убрать их из индекса, но оставить переходы по ссылкам для обхода. Код лучше размещать в дочерней теме или в небольшом функциональном плагине.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_author() || is_date() || is_tag() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Если нужно закрыть только часть таксономий, например отдельные теги, а рубрики оставить открытыми, используйте проверку по объекту термина. Это безопаснее, чем ставить noindex на все архивы подряд.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_tag() ) {
$term = get_queried_object();
if ( $term instanceof WP_Term && in_array( $term->slug, array( 'news', 'promo', 'test' ), true ) ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
}
return $robots;
} );Если вы хотите не только закрыть архив, но и убрать его из карты сайта, это уже отдельная задача. Для этого удобнее использовать возможности SEO-плагина или фильтры генератора sitemap, а не пытаться решить всё через robots.
Когда лучше не закрывать архив, а доработать его
Не каждый архив — мусор. Иногда страница рубрики или автора может быть полезной посадочной страницей, если на ней есть нормальный заголовок, описание, понятная структура и релевантные материалы. В таком случае закрытие от индексации может только навредить.
Оставляйте архив открытым, если:
- он получает переходы из поиска;
- на нём есть уникальный текст, а не только список записей;
- архив помогает пользователю быстро найти нужную группу материалов;
- это основная навигационная сущность сайта, а не техническая страница.
Если архив слабый, но нужен для навигации, можно оставить его доступным для пользователей и закрыть от индексации. Это нормальная практика, если не перегибать с количеством закрытых страниц.
Проверка результата после внедрения
После правок не ограничивайтесь просмотром исходного кода. Нужно проверить, что метатег реально появился и что важные страницы не пострадали.
- Откройте архив в браузере и посмотрите исходный код страницы.
- Найдите строку с
noindexили проверьте заголовокrobots, если вы используете серверную настройку. - Убедитесь, что рубрики, которые должны индексироваться, остались без
noindex. - Проверьте карту сайта: закрытые архивы не должны попадать туда, если вы решили убрать их полностью.
- Посмотрите в Search Console, как меняется статус страниц после переобхода.
Для быстрой проверки можно использовать просмотр исходника и поиск по слову robots. Если у вас есть доступ к консоли, полезно проверить заголовки ответа:
curl -I https://example.com/author/admin/В ответе не обязательно будет отдельный заголовок X-Robots-Tag; если вы задаёте правила через wp_robots, метатег появится в HTML. Главное — убедиться, что он действительно выводится на нужных шаблонах.
Частые ошибки и как их исправить
Закрыли все архивы подряд
Это самая частая ошибка. После такого решения сайт теряет полезные посадочные страницы, а внутренняя перелинковка становится слабее. Исправление простое: верните индексацию для рубрик и только точечно закройте слабые типы архивов.
Поставили noindex, но оставили страницу в sitemap
Так делать не стоит. Поисковик получает противоречивые сигналы: в карте сайта URL есть, а в индексацию он не нужен. Лучше синхронизировать настройки SEO-плагина и генерацию sitemap.
Закрыли архив, но не проверили пагинацию
Иногда закрывают только первую страницу архива, а /page/2/ остаётся открытой. В результате мусор никуда не делся. Проверьте все варианты URL, которые генерирует тема.
Используют noindex вместо удаления причины дубля
Если тег дублирует рубрику, лучше сначала пересмотреть таксономии и структуру контента. noindex — это не замена нормальной архитектуре сайта, а способ убрать лишнее из поиска, когда переделка структуры сейчас невозможна.
Чек-лист перед публикацией правок
- Проверены архивы авторов, тегов, дат и пагинация.
- Решено, какие архивы должны индексироваться, а какие нет.
- Добавлен
noindex, followтолько на нужные шаблоны. - Закрытые URL убраны из sitemap, если это требуется.
- Проверен исходный код и заголовки ответа.
- В Search Console отправлены на переобход ключевые страницы, если менялась индексация.
Практика безопасности и производительности
Если вы вносите код вручную, не редактируйте файлы темы напрямую на рабочем сайте. Лучше использовать дочернюю тему или небольшой mu-plugin, чтобы правка не слетела после обновления. Это особенно важно, если на сайте несколько разработчиков или тема регулярно обновляется.
С точки зрения производительности сама настройка wp_robots почти ничего не стоит, но ошибки в логике могут создать лишние проверки на каждом запросе. Поэтому не усложняйте условие без необходимости и не делайте тяжёлые запросы к базе внутри фильтра.
Если вам нужно более широкое управление дублями, удобнее взять SEO-плагин с настройками для архивов и индексации. Например, в Clearfy Pro есть инструменты для чистки сайта и отключения лишних сущностей, но использовать такой плагин стоит только там, где он реально закрывает вашу задачу, а не ради одной галочки.
В итоге рабочая схема обычно выглядит так: полезные архивы остаются открытыми, мусорные получают noindex, follow, а самые бесполезные служебные страницы дополнительно убираются из карты сайта и внутренней навигации. Это даёт более чистую структуру без лишнего риска для SEO.