Ситуация типовая: на сайте есть архивы рубрик, тегов, авторов, дат или внутренних фильтров, и часть из них не должна попадать в поиск. При этом сами страницы продолжают жить, обновляться и иногда участвовать в навигации. Ошибка здесь не в том, что архивы существуют, а в том, что WordPress часто оставляет их индексируемыми по умолчанию, а потом владелец сайта пытается лечить последствия уже на уровне индекса.
Если задача именно в том, чтобы закрыть архивные страницы от индексации и при этом не создавать лишних дублей, лучше сначала понять, какие URL реально должны остаться в поиске, а какие — нет. Для IndexNow это тоже важно: если страница стала noindex, не стоит продолжать отправлять её как полноценную целевую страницу.
Какие архивы обычно нужно закрывать
Не существует универсального правила для всех сайтов, но на практике чаще всего закрывают:
- архивы тегов, если они дублируют рубрики или не несут самостоятельной ценности;
- архивы авторов на сайтах с одним автором;
- архивы по датам, если они не используются как отдельный контентный раздел;
- внутренние страницы поиска;
- служебные страницы фильтрации и сортировки, если они создают мусорные URL.
При этом рубрики, которые реально собирают трафик и имеют уникальные описания, закрывать не обязательно. Здесь важнее не «закрыть всё подряд», а убрать из индекса именно те страницы, которые не должны конкурировать с основными материалами.
Диагностика: почему архивы уже попали в индекс
Перед изменениями проверьте, что именно происходит сейчас. Часто проблема выглядит как «страница закрыта, но Google или другая система всё равно держит её в индексе». Причины обычно приземлённые:
- на странице нет
noindex, только запрет вrobots.txt; - канонический URL указывает на сам архив, а не на основную страницу;
- SEO-плагин отключён или настроен только частично;
- архивы доступны по нескольким адресам: с параметрами, со слешем и без;
- страницы продолжают попадать в sitemap.
Проверьте исходный HTML и заголовки ответа. Для этого удобно использовать браузер, curl или инструменты разработчика.
curl -I https://example.com/tag/wordpress/Ищите в ответе заголовки, связанные с индексацией, а в HTML — мета-тег robots и canonical. Если архив должен быть закрыт, но в коде есть только canonical на сам себя, этого недостаточно.
Пошаговое решение: как закрыть архивы правильно
Вариант 1. Через SEO-плагин
Если на сайте уже стоит плагин для SEO, это самый безопасный путь. В большинстве случаев достаточно отключить индексацию для нужных типов архивов: тегов, авторов, дат или отдельных таксономий. Плюс этого подхода в том, что плагин обычно сам ставит noindex, корректный canonical и убирает такие страницы из карты сайта.
Минус тоже есть: если в плагине много настроек, легко закрыть не то. Поэтому после сохранения конфигурации обязательно проверяйте исходный код страницы и sitemap.
| Подход | Плюсы | Минусы |
|---|---|---|
| SEO-плагин | Быстро, меньше кода, обычно закрывает и sitemap | Зависимость от настроек, риск ошибочного отключения нужных архивов |
| Код в теме/плагине | Точный контроль, можно закрыть только нужные архивы | Нужно поддерживать код и тестировать после обновлений |
| Только robots.txt | Просто добавить правило | Не решает задачу индексации, если URL уже известен поиску |
Вариант 2. Через код: поставить noindex на архивы
Если нужен точечный контроль, можно добавить фильтр в дочернюю тему или в небольшой mu-plugin. Ниже пример для WordPress, который ставит noindex,follow на архивы тегов, авторов и дат. Это не выдуманный API: используется стандартный фильтр wp_robots.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_tag() || is_author() || is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Если архивы должны не только закрываться, но и выпадать из sitemap, это уже отдельная задача. Сам по себе noindex не удаляет URL из карты сайта, если генератор sitemap не учитывает ваши правила. Для этого нужно либо настраивать SEO-плагин, либо фильтровать список URL на уровне генератора sitemap, если он это поддерживает.
Вариант 3. Закрыть только часть архивов
Иногда закрывать все архивы — плохая идея. Например, рубрики могут быть полезны, а теги — нет. Тогда логика должна быть выборочной. Пример ниже закрывает только теги и архивы дат, но оставляет рубрики открытыми:
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_tag() || is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Такой вариант удобен, если на сайте рубрики используются как полноценные посадочные страницы, а теги создают шум.
Что делать с IndexNow после закрытия архивов
Если страница стала noindex, не стоит продолжать отправлять её как обычный URL для индексации. Это не означает, что нужно срочно удалять всё из индекса вручную, но логика отправки должна учитывать статус страницы. Иначе вы сами будете подталкивать поисковую систему к повторной проверке URL, который уже не должен ранжироваться.
Практически это выглядит так: при сохранении термина, записи или настроек архива вы проверяете, открыт ли URL для индексации. Если нет — не отправляете его в IndexNow как «новый контент». Для уже существующих страниц можно дождаться переобхода или инициировать обновление только после изменения статуса.
Если у вас уже есть собственная интеграция IndexNow, проверьте, не шлёт ли она все URL подряд без учёта noindex. Это частая ошибка в самописных решениях.
Проверка результата после внедрения
После настройки не ограничивайтесь визуальной проверкой в админке. Нужны три проверки:
- Откройте архив в браузере и посмотрите исходный код: должен быть
noindex. - Проверьте, что canonical не указывает на мусорный URL и не конфликтует с основным адресом.
- Убедитесь, что архив исчез из sitemap, если вы решили его исключить.
Для быстрой проверки можно использовать curl и поиск по HTML:
curl -s https://example.com/tag/wordpress/ | grep -iE 'robots|canonical'Если страница закрыта правильно, в коде должен быть либо мета-тег robots с noindex, либо соответствующий HTTP-заголовок, если вы настраивали его на уровне сервера или плагина.
Частые ошибки и как их исправить
- Закрыли архив в robots.txt, но не поставили noindex. Это не удаляет URL из индекса, если поисковик уже знает адрес. Исправление: добавьте
noindexи дождитесь переобхода. - Оставили архив в sitemap. Поисковик получает противоречивый сигнал: URL закрыт, но одновременно рекомендован к обходу. Исправление: исключите его из карты сайта.
- Поставили noindex на рубрики, которые дают трафик. После этого можно потерять полезные посадочные страницы. Исправление: разделите архивы по типам и закрывайте только лишнее.
- Использовали canonical вместо noindex. Canonical помогает при дублях, но не всегда решает задачу закрытия архивов. Исправление: canonical и noindex решают разные проблемы, не путайте их.
- Сломали архивы через хук в теме. После обновления темы код исчезает. Исправление: переносите логику в дочернюю тему или mu-plugin.
Безопасность и производительность
Если правите код, не вносите изменения прямо в родительскую тему. Для таких задач лучше использовать дочернюю тему или отдельный mu-plugin: так настройки не потеряются после обновления. Ещё один практический момент — не создавайте тяжёлые проверки на каждый запрос, если можно обойтись стандартными условными тегами WordPress.
Если на сайте уже есть SEO-плагин, не дублируйте его логику самописными фильтрами без необходимости. Два источника правды по robots и canonical часто приводят к конфликтам. Сначала проверьте, что делает плагин, и только потом добавляйте точечный код.
Для сайтов, где нужно одновременно чистить дубли, управлять архивами и не ломать индексацию, иногда проще собрать это в одном инструменте. Например, в Clearfy Pro есть набор функций для технической чистки WordPress и управления SEO-элементами; если нужен такой сценарий, смотрите описание на wpshop.ru.
Когда лучше не закрывать архив полностью
Если архив уже получает переходы, имеет уникальный текст, помогает навигации и не дублирует другие страницы, закрывать его только ради «чистоты» не стоит. В таких случаях лучше доработать контент архива: добавить описание, убрать пустые теги, сократить количество бесполезных таксономий и проверить внутреннюю перелинковку. Иногда это даёт больше пользы, чем тотальное noindex.
Рабочий критерий простой: если архив нельзя объяснить пользователю как полезную страницу, его можно закрывать. Если он нужен для структуры сайта и реально помогает находить материалы, лучше оставить его открытым и улучшить содержимое.