Архивы авторов и дат в WordPress часто остаются в индексе даже тогда, когда они не несут самостоятельной ценности. На небольшом блоге это обычно просто шум в поиске. На контентном сайте с несколькими авторами такие страницы начинают конкурировать с рубриками, тегами и самими материалами. Проблема не в том, что архивы существуют, а в том, что поисковик тратит на них обход и может выбрать их как канонические страницы без явной пользы для пользователя.
Ниже — рабочий сценарий: как диагностировать ситуацию, закрыть архивы авторов и дат от индексации, не сломать навигацию и проверить, что всё применилось корректно.
Когда архивы авторов и дат действительно мешают
Сначала стоит понять, что именно у вас индексируется. Не все архивы нужно закрывать автоматически. Если у автора есть сильная редакционная страница с биографией, подборкой материалов и уникальным описанием, её можно оставить открытой. То же касается архивов дат в новостных проектах, где они реально используются как навигация.
Типичные признаки проблемы
- в поиске появляются страницы вида
/author/username/и/2024/05/, хотя они не нужны как посадочные; - в отчётах Google Search Console есть страницы архивов с показами, но почти без кликов;
- в выдаче дублируются сниппеты из записей, а не уникальный контент архива;
- robots.txt уже закрывает часть URL, но они всё равно остаются в индексе как найденные ранее.
Важно различать noindex и запрет в robots.txt. Если вы просто закрыли URL в robots.txt, поисковик может не увидеть мета-тег на странице и продолжить держать её в индексе как известный URL. Для удаления из индекса обычно нужен именно noindex на самой странице, а не только disallow.
Диагностика: что сейчас отдаёт сайт
Перед правками проверьте, как WordPress формирует архивы. На практике встречаются три варианта: тема сама выводит мета-robots, SEO-плагин управляет индексированием, либо ничего не настроено и архивы открыты по умолчанию.
Что проверить вручную
- Откройте страницу автора и архив даты в браузере.
- Посмотрите исходный код на наличие
<meta name="robots". - Проверьте заголовок ответа на предмет
X-Robots-Tag, если он используется сервером или плагином. - Убедитесь, что canonical не указывает на сам архив, если вы хотите его закрыть.
Если у вас есть доступ к консоли, удобно проверить заголовки так:
curl -I https://example.com/author/admin/
curl -I https://example.com/2024/05/Ищите в ответе X-Robots-Tag: noindex или отсутствие такого заголовка. Если заголовка нет, а в HTML тоже нет мета-тега robots, страница, скорее всего, открыта для индексации.
Пошаговое решение через SEO-плагин
Если на сайте уже стоит SEO-плагин, это самый безопасный путь. Он не ломает шаблоны и позволяет управлять архивами без правки темы. В большинстве случаев достаточно отключить индексацию архивов авторов и дат в настройках таксономий и архивов.
Что обычно нужно выключить
- архивы авторов, если у каждого автора нет отдельной SEO-ценности;
- архивы по дате, если сайт не новостной и эти страницы не используются как посадочные;
- страницы вложений, если они тоже индексируются и не нужны в поиске;
- тонкие архивы, которые дублируют рубрики и теги.
Если вы используете Clearfy Pro, в нём есть инструменты для закрытия служебных страниц и удаления дублей. Это не обязательное условие, но для типового сайта такой подход удобнее, чем ручная правка шаблонов. Ссылка на продукт: Clearfy Pro.
Но если нужен именно кодовый вариант или вы не хотите зависеть от плагина, можно сделать это в теме или небольшом mu-plugin.
Решение через код: noindex для архивов авторов и дат
Ниже пример, который добавляет noindex, follow для архивов авторов и дат. Он не закрывает сайт целиком, а только нужные типы архивов. Код лучше размещать в дочерней теме или в отдельном mu-plugin, чтобы не потерять настройку при обновлении темы.
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_author() || is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Этот способ работает на современных версиях WordPress, где используется фильтр wp_robots. Он предпочтительнее, чем ручной вывод мета-тега в шаблоне, потому что не зависит от конкретного header.php.
Если нужно закрыть только архивы дат
Иногда архивы авторов полезны, а архивы дат — нет. Тогда условие можно сузить:
<?php
add_filter( 'wp_robots', function( array $robots ) {
if ( is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Если у вас SEO-плагин уже добавляет robots-мета, проверьте, не конфликтует ли он с этим фильтром. Два источника правил могут дать неожиданный результат, особенно если один ставит index, а другой — noindex.
Нужно ли править robots.txt
Для удаления из индекса — не обязательно. Для экономии обхода на очень больших сайтах — иногда да, но осторожно. Если вы закроете архивы в robots.txt, поисковик может перестать их обходить, но старые URL не исчезнут автоматически. Поэтому robots.txt имеет смысл использовать как дополнительный слой, а не как единственный механизм.
Пример аккуратного правила:
User-agent: *
Disallow: /author/
Disallow: /2024/
Disallow: /2025/Такой вариант подходит только если вы уверены, что архивы дат вам вообще не нужны в обходе. На практике чаще достаточно noindex без запрета в robots.txt, чтобы поисковик смог увидеть директиву на самой странице.
Проверка результата после внедрения
После изменений не ограничивайтесь просмотром страницы в браузере. Нужно проверить и HTML, и заголовки, и поведение в Search Console.
- откройте архив автора и убедитесь, что в исходнике есть
noindex; - проверьте, что canonical не указывает на случайную главную или на сам архив, если это не задумано;
- посмотрите, не блокирует ли robots.txt обход этих страниц раньше, чем поисковик увидит мета-тег;
- в Search Console отправьте URL на повторную проверку после изменения;
- если архив уже в индексе, дождитесь переобхода, не ожидая мгновенного исчезновения.
Полезно проверить и через командную строку:
curl -s https://example.com/author/admin/ | grep -i robots
curl -s https://example.com/2024/05/ | grep -i robotsЕсли сайт отдаёт заголовок X-Robots-Tag, проверьте его отдельно:
curl -I https://example.com/author/admin/ | grep -i robotsЧастые ошибки и как их исправить
Закрыли в robots.txt, но не поставили noindex
Это самая частая ошибка. Страница остаётся известной поисковику и может висеть в индексе дольше, чем вы ожидаете. Исправление простое: уберите жёсткий запрет на обход и добавьте noindex на самой странице.
Закрыли архивы авторов, но забыли про страницы вложений
Медиа-страницы часто создают похожую проблему: они индексируются, но не дают пользы. Если архивы уже приводите в порядок, проверьте и вложения. Иначе вы уберёте один источник дублей, но оставите другой.
Поставили noindex через шаблон, а тема обновилась
Если правка была в header.php или другом файле темы, обновление может её стереть. Для постоянного решения используйте дочернюю тему или mu-plugin.
Смешали правила плагина и кода
Когда SEO-плагин и кастомный код одновременно управляют robots-мета, результат может быть непредсказуемым. Оставьте один источник истины: либо плагин, либо код.
Что делать с архивами авторов, если они нужны для навигации
Иногда закрывать архивы полностью не стоит. Например, если у автора есть полноценная страница с описанием, фото, списком публикаций и внутренними ссылками. В таком случае можно оставить архив открытым, но убрать его из индекса через noindex и при необходимости улучшить саму страницу автора: добавить уникальный текст, контакты редакции, ссылки на лучшие материалы.
Для крупных редакций это часто лучший компромисс: пользователи могут переходить по автору внутри сайта, а поисковик не тратит ресурсы на слабую посадочную. Если нужен более широкий набор инструментов для чистки дублей и служебных страниц, можно посмотреть и на Clearfy Pro, но решение всё равно стоит принимать по структуре конкретного сайта, а не по умолчанию.
| Подход | Когда подходит | Плюсы | Минусы |
|---|---|---|---|
| SEO-плагин | Нужна быстрая настройка без кода | Просто поддерживать, меньше риска сломать шаблон | Зависимость от плагина и его логики |
Код через wp_robots | Нужна точечная настройка | Гибко, прозрачно, не зависит от интерфейса плагина | Нужно следить за обновлениями темы и окружения |
| robots.txt | Нужно сократить обход на большом сайте | Может уменьшить лишние запросы | Не решает задачу индексации само по себе |
Если вам нужно закрыть именно служебные архивы без побочных эффектов, начните с noindex, затем проверьте canonical и только после этого решайте, нужен ли robots.txt. Такой порядок обычно даёт предсказуемый результат и не создаёт новых дублей вместо старых.