Если сайт на WordPress начал раздуваться за счет тегов, архивов авторов, дат и служебных страниц, поисковик почти всегда видит больше мусора, чем полезного контента. Проблема не в самом WordPress, а в том, что по умолчанию он генерирует много индексируемых URL, которые часто дублируют друг друга по смыслу.
Ниже — рабочая схема, как понять, какие страницы реально мешают индексации, чем их закрывать и как проверить, что вы не сломали важные разделы.
Когда проблема уже есть: как это диагностировать
Первый признак — в Search Console растет количество страниц, а трафик и показы не растут пропорционально. Второй — в индексе появляются архивы тегов с одним-двумя записями, страницы авторов без смысла, архивы по датам и пагинация, которая дублирует основной контент.
Проверять нужно не «на глаз», а по конкретным URL-типам:
- страницы тегов с пустым или слабым содержимым;
- архивы авторов на сайте с одним автором;
- архивы по датам, если они не несут отдельной ценности;
- страницы пагинации рубрик и архивов, если они тянут в индекс мусорные листинги;
- служебные страницы поиска и внутренних фильтров, если они открыты для индексации.
Быстрый способ проверить статус — посмотреть исходный код страницы и заголовки ответа. Если в HTML уже стоит noindex, это хорошо. Если нет, а URL все равно индексируется, значит проблема либо в шаблоне, либо в настройках SEO-плагина, либо в robots.txt.
Что смотреть в первую очередь
<meta name="robots" content="noindex,follow">в исходнике;- HTTP-заголовок
X-Robots-Tag, если он используется на уровне сервера; - канонический URL через
rel="canonical"; - нет ли закрытия в
robots.txtтам, где поисковик должен увидеть страницу и прочитать noindex.
Важно: если вы просто запретите URL в robots.txt, поисковик может не увидеть мета-тег noindex и дольше держать страницу в индексе. Для уже известных дублей обычно безопаснее сначала поставить noindex, а не блокировать сканирование.
Какие страницы закрывать, а какие оставить
Не все архивы нужно прятать. Ошибка многих сайтов — закрыть вообще все, а потом потерять полезный трафик из рубрик или тегов, которые реально помогают навигации.
| Тип страницы | Что делать | Комментарий |
|---|---|---|
| Теги без трафика и без уникального текста | noindex, follow | Часто это чистый дубль списка записей |
| Архивы авторов на сайте с одним автором | noindex, follow | Почти всегда лишний слой индексации |
| Архивы по датам | noindex, follow | Оставляют только если это реально полезный сценарий |
| Рубрики с уникальным контентом и трафиком | Оставить в индексе | Нужна нормальная посадочная страница |
| Пагинация архивов | Зависит от структуры | Иногда лучше noindex для глубоких страниц |
Если у рубрики есть нормальный текст, понятная структура и она собирает переходы, закрывать ее не стоит. Если же это просто список записей без ценности, noindex обычно оправдан.
Пошаговое решение через SEO-плагин и шаблон
Самый практичный вариант — сначала настроить индексацию в SEO-плагине, а потом проверить, не переопределяет ли тему эти настройки. В большинстве проектов этого достаточно.
Шаг 1. Отключите индексацию лишних архивов в SEO-плагине
В популярных SEO-плагинах есть отдельные настройки для архивов авторов, дат, тегов и таксономий. Логика простая: если страница не несет самостоятельной ценности, она не должна конкурировать с основными материалами.
Если вы используете Clearfy Pro, там удобно чистить дубли и служебные элементы сайта, но принцип тот же: сначала определите, какие типы архивов должны быть доступны поисковику, а какие — нет. Для WordPress это обычно быстрее и надежнее, чем вручную править шаблоны в каждой теме.
Шаг 2. Проверьте вывод meta robots в теме
Иногда тема или кастомный шаблон игнорирует настройки SEO-плагина и выводит собственные мета-теги. Тогда в исходнике может быть конфликт: один плагин ставит noindex, а шаблон — обычный индексируемый документ.
Если нужно принудительно задать правила для конкретных архивов, можно сделать это через фильтр wp_robots. Это штатный механизм WordPress, и он работает без выдуманных костылей.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_tag() || is_author() || is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Этот код лучше добавлять в дочернюю тему или в небольшой mu-plugin, а не в основной файл темы, который легко потерять при обновлении.
Шаг 3. Не закрывайте важные страницы в robots.txt
Если вы хотите убрать дубли из индекса, robots.txt — не основной инструмент. Он полезен для экономии краулингового бюджета, но не заменяет noindex. Закрывать в robots.txt имеет смысл только то, что вообще не должно сканироваться: технические директории, служебные endpoint’ы, если вы уверены в последствиях.
Пример аккуратного robots.txt для типового сайта:
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /?s=
Disallow: /search/
Sitemap: https://example.com/sitemap_index.xmlНе стоит массово запрещать в robots.txt теги и архивы, если вы еще не убедились, что поисковик получил корректный noindex.
Если нужен точечный контроль: код для functions.php или mu-plugin
Иногда удобнее управлять индексацией на уровне кода, особенно если сайт кастомный и SEO-плагин не покрывает все сценарии. Тогда можно задать правила для отдельных типов архивов и страниц поиска.
<?php
add_action( 'wp_head', function() {
if ( is_search() || is_tag() || is_author() || is_date() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
}, 1 );Этот вариант рабочий, но использовать его стоит только если вы понимаете, что делаете. Если у вас уже есть SEO-плагин, лучше не дублировать логику в двух местах. Иначе через пару месяцев будет непонятно, кто именно выставляет мета-тег.
Для проверки, что код сработал, откройте архив в браузере и посмотрите исходный код страницы. Должна появиться строка с noindex,follow. Затем проверьте URL через инструмент проверки в Search Console и убедитесь, что Google видит именно ту версию страницы, которую вы ожидаете.
Проверка результата после внедрения
После правок не ждите мгновенного эффекта. Сначала нужно убедиться, что технически все выставлено правильно, а потом уже смотреть на динамику в индексе.
- откройте несколько страниц тегов, авторов и дат в браузере;
- проверьте исходный код на наличие
noindex,follow; - посмотрите, не пропал ли canonical на основных страницах;
- проверьте, не заблокированы ли эти URL в
robots.txtраньше времени; - в Search Console отправьте на повторное сканирование важные URL, если они были ошибочно закрыты.
Если через некоторое время количество индексируемых дублей снижается, а в отчете по страницам уменьшается доля архивов и служебных URL, значит схема работает. Если нет — ищите конфликт между темой, SEO-плагином и кэшем.
Частые ошибки и как их исправить
Закрыли в robots.txt, но не поставили noindex
Это самая частая ошибка. Поисковик может продолжать держать URL в индексе, потому что не увидел инструкцию на самой странице. Исправление простое: сначала вернуть доступ для сканирования, затем поставить noindex, и только потом при необходимости ограничивать обход.
Спрятали рубрики, которые дают трафик
Иногда в noindex уезжают не только мусорные теги, но и полезные категории. В результате сайт теряет посадочные страницы, которые хорошо ранжировались. Перед массовым закрытием проверьте, какие архивы уже получают показы и переходы.
Дублируют правила плагин и тема
Если SEO-плагин уже выводит noindex, а в теме вручную добавлен такой же код, это обычно не ломает сайт, но усложняет диагностику. Через месяц никто не вспомнит, где именно лежит логика. Оставьте один источник правды.
Сломали пагинацию
Иногда при попытке закрыть архивы забывают, что пагинация нужна для обхода контента. Если вы ставите noindex на глубокие страницы архивов, проверьте, не мешает ли это поисковику добираться до старых записей. Для больших сайтов это особенно важно.
Практические советы по безопасности и производительности
Чем меньше лишних архивов и служебных URL индексируется, тем меньше мусора в отчетах и тем проще поддерживать сайт. Но не стоит превращать оптимизацию в тотальную зачистку.
- не удаляйте теги массово без анализа внутренних ссылок;
- не блокируйте технические URL, которые нужны плагинам и AJAX;
- после изменений очистите кэш страницы и, если есть, серверный кэш;
- проверяйте, не генерирует ли тема отдельные архивы для нестандартных таксономий;
- если используете несколько SEO-расширений, оставьте только одно, которое управляет robots и canonical.
Если нужен более системный подход к чистке дублей и служебных элементов, имеет смысл смотреть в сторону инструментов, которые умеют управлять SEO-настройками и мусорными сущностями сайта централизованно. Но даже в этом случае проверка руками обязательна: никакой плагин не угадает вашу структуру контента лучше, чем вы сами.
После внедрения не ограничивайтесь одной страницей. Проверьте несколько разных типов архивов, страницу поиска, пагинацию и пару записей из рубрик. Только так можно убедиться, что вы закрыли именно дубли, а не полезные посадочные страницы.