Как запретить индексацию страниц авторов и архивов в WordPress

На небольшом сайте архивы авторов и дат часто не нужны в поиске: они добавляют дубли, размывают релевантность и создают лишние точки обхода для роботов. Проблема обычно не в самой странице, а в том, что WordPress по умолчанию генерирует такие архивы автоматически, а тема ещё и выводит на них полноценный контент.

Ниже разберём, как понять, что именно мешает индексации, чем отличается noindex от закрытия в robots.txt, и как безопасно отключить архивы авторов и дат через код или SEO-плагин.

Когда это действительно проблема

Сначала стоит проверить, есть ли у сайта вообще смысл в таких архивах. Если у вас блог с несколькими авторами, архив автора может быть полезен. Если же контент публикует один человек, а архивы дат пустые или почти пустые, поисковик получает страницы без самостоятельной ценности.

Признаки, что архивы лучше закрыть от индексации

  • в поиске уже видны страницы вида /author/username/ или /2026/08/;
  • в Яндекс.Вебмастере или Google Search Console растёт число страниц без трафика;
  • архивы дублируют список записей с главной, рубриками или тегами;
  • на архиве автора нет уникального описания, а только список постов;
  • архивы дат не несут пользы пользователю и не используются в навигации.

Что именно нужно закрывать

Обычно речь идёт о двух типах архивов:

  • архивы авторов — страницы всех записей конкретного пользователя;
  • архивы дат — страницы по году, месяцу или дню публикации.

При этом не стоит путать запрет индексации с полным отключением страницы. Иногда архив нужен для пользователей, но не нужен в поиске. Тогда правильнее оставить его доступным и добавить noindex, follow.

Диагностика: как понять, что уже индексируется

Перед правками проверьте текущую ситуацию. Это помогает не закрыть лишнее и не ломать сайт, который уже получает трафик с архивных страниц.

  1. Откройте архив автора и архив даты в браузере.
  2. Посмотрите исходный код страницы и найдите meta robots.
  3. Проверьте, есть ли canonical на саму страницу или на другую URL.
  4. Выполните поиск по сайту в Google и Яндексе по шаблону URL архивов.

Если в коде уже есть noindex, но страницы всё равно попадают в индекс, причина часто в том, что запрет сделан только через robots.txt или конфликтует с темой/плагином SEO.

Пошаговое решение через код

Если вы не хотите зависеть от плагина, можно задать мета-роботы на уровне темы или небольшого mu-plugin. Это надёжнее, чем править шаблоны архивов вручную, потому что логика не расползается по файлам.

1. Добавьте noindex для архивов авторов и дат

Ниже пример для functions.php дочерней темы или отдельного плагина. Он не отключает архивы полностью, а только меняет robots meta для нужных типов страниц.

<?php
add_filter( 'wp_robots', function( array $robots ) {
    if ( is_author() || is_date() ) {
        $robots['noindex'] = true;
        $robots['follow']   = true;
    }

    return $robots;
} );

Такой вариант работает на современных версиях WordPress, где используется фильтр wp_robots. Если у вас уже стоит SEO-плагин, проверьте, не переопределяет ли он этот вывод.

2. При необходимости отключите архивы авторов полностью

Если на сайте один автор и архив не нужен вообще, можно перенаправлять его на главную или на страницу об авторе. Но делать это стоит аккуратно: резкий редирект без анализа может сломать старые ссылки из поиска и внешних сайтов.

<?php
add_action( 'template_redirect', function() {
    if ( is_author() ) {
        wp_safe_redirect( home_url( '/' ), 301 );
        exit;
    }
} );

Этот вариант подходит только если вы уверены, что архив автора не нужен ни пользователям, ни поиску. Для большинства сайтов безопаснее оставить страницу доступной, но закрыть её от индексации.

3. Если нужен только запрет для архивов дат

Иногда полезно оставить архивы авторов, но убрать архивы по датам. Тогда условие можно сузить:

<?php
add_filter( 'wp_robots', function( array $robots ) {
    if ( is_date() ) {
        $robots['noindex'] = true;
        $robots['follow']   = true;
    }

    return $robots;
} );

Плагин или код: что выбрать

Если на сайте уже используется SEO-плагин, проще настроить индексацию там. Если нужен контроль без лишних зависимостей — код. Ниже короткое сравнение.

ПодходПлюсыМинусы
SEO-плагинУдобно, есть интерфейс, меньше ручной поддержкиЗависимость от настроек и совместимости с темой
Код через wp_robotsПрозрачно, быстро, без лишнего UIНужно следить за обновлениями темы и плагинов
robots.txtПросто закрыть обходНе гарантирует удаление из индекса и не решает дубли

Если нужен более широкий набор технических правок — от дублей до очистки лишних архивов и мета-страниц — иногда удобнее собрать это в одном инструменте вроде Clearfy Pro, но важно не включать всё подряд без проверки результата.

Почему robots.txt не решает задачу полностью

Это частая ошибка. Если вы просто запретите обход в robots.txt, поисковик может перестать заходить на страницу, но URL уже может оставаться в индексе как найденный ранее. Кроме того, без доступа к странице робот не увидит мета noindex.

Правильная схема обычно такая:

  • страница доступна для обхода;
  • на ней стоит noindex, follow;
  • canonical не указывает на случайную страницу;
  • внутренние ссылки на архивы не используются там, где они не нужны.

Проверка результата после внедрения

После правки не ограничивайтесь визуальной проверкой. Откройте исходный код архивной страницы и убедитесь, что в блоке meta robots есть нужное значение.

Что проверить вручную

  • в HTML страницы есть noindex;
  • страница открывается без 404 и без лишних редиректов;
  • canonical указывает на саму страницу или на выбранную вами целевую страницу;
  • архив не исчез из навигации, если он нужен пользователям;
  • в Search Console или Вебмастере статус страницы меняется после переобхода.

Для быстрой проверки можно использовать просмотр исходного кода или команду curl:

curl -I https://example.com/author/admin/

Но заголовки ответа не покажут meta robots, поэтому для точной проверки лучше смотреть HTML-ответ целиком:

curl -s https://example.com/author/admin/ | grep -i robots

Частые ошибки и как их исправить

1. Закрыли страницу в robots.txt, но не добавили noindex

В результате URL может остаться в индексе. Исправление: уберите запрет на обход для этих страниц и добавьте meta robots через код или SEO-плагин.

2. Поставили 301 на главную без анализа

Так делают, когда хотят быстро убрать архив автора. Но если на него есть внешние ссылки или он уже ранжируется, редирект на главную выглядит для поисковика как нерелевантная замена. Лучше сначала оценить трафик и ссылки.

3. Конфликт с SEO-плагином

Если плагин уже управляет robots meta, ваш фильтр может не сработать или будет перезаписан. В этом случае настройку нужно делать в одном месте, а не дублировать в теме и плагине одновременно.

4. Сломали архивы для пользователей

Иногда архивы скрывают из меню или редиректят, хотя они нужны для навигации. Если архив полезен посетителям, не удаляйте его полностью — достаточно закрыть от индексации.

Практические советы по безопасности и производительности

Любые изменения в functions.php лучше вносить в дочернюю тему или отдельный небольшой плагин. Так обновление темы не затрёт правки. Перед изменениями сделайте резервную копию и проверьте сайт в staging-окружении, если оно есть.

Если на сайте много архивов, категорий и тегов, не пытайтесь лечить всё одним редиректом. Сначала уберите действительно пустые и бесполезные страницы, затем проверьте внутреннюю перелинковку и только потом меняйте правила индексации. Это снижает риск случайно закрыть полезные страницы.

Для сайтов, где техническая чистка уже накопилась, удобно сначала пройтись по дублям, архивам и мета-страницам в одном месте. Но даже в этом случае итоговая проверка остаётся за вами: поисковая индексация меняется не мгновенно, и важно смотреть на фактический HTML, а не только на настройки в админке.

Развитие бизнеса вокруг WordPress: современные решения и подробные руководства.