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

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

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

Когда архивы по датам действительно стоит закрывать

Речь о страницах вида /2024/, /2024/05/, /2024/05/12/. На небольших и средних сайтах они часто не дают поиску ничего нового. Если на архиве только список записей за месяц, а сам список уже дублируется в рубриках, тегах и поиске по сайту, индексировать такую страницу обычно нет смысла.

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

Быстрая диагностика проблемы

Перед правками проверьте три вещи:

  • есть ли архивы по датам в индексе через site:example.com/2024/ или в Google Search Console;
  • отдают ли эти страницы статус 200 OK и содержат ли они полезный уникальный текст;
  • не используются ли они как часть меню, хлебных крошек или внутренних ссылок из шаблона.

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

Что выбрать: плагин, код или настройка шаблона

Есть три рабочих подхода. Самый безопасный для редактора — через SEO-плагин. Самый точный — через код в теме или мини-плагине. Самый грубый — закрыть страницу через robots.txt, но это не лучший вариант, если задача именно в индексации, а не в обходе роботом.

СпособПлюсыМинусыКогда использовать
SEO-плагинБыстро, без кода, удобно для контент-командыЗависит от интерфейса плагинаЕсли нужен точечный noindex без разработки
Код в теме/плагинеПолный контроль, можно закрыть только нужные архивыНужно тестировать после обновленийЕсли нужен предсказуемый технический результат
robots.txtПросто добавить правилоНе гарантирует удаление из индекса, если URL уже известенТолько как дополнительная мера, не как основное решение

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

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

Ниже пример для functions.php дочерней темы или отдельного плагина:

add_action('wp_head', function () {
    if (is_date()) {
        echo '<meta name="robots" content="noindex,follow" />' . "\n";
    }
}, 1);

Что делает этот код: на всех архивных страницах по дате добавляет мета-тег noindex,follow. Это означает, что страницу не нужно индексировать, но ссылки на ней можно учитывать при обходе.

Если вы хотите закрыть только годовые и месячные архивы, а дневные оставить, используйте более точную проверку:

add_action('wp_head', function () {
    if (is_year() || is_month()) {
        echo '<meta name="robots" content="noindex,follow" />' . "\n";
    }
}, 1);

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

Если нужен канонический URL

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

Пример для месячных архивов, если вы хотите канонизировать их на страницу блога:

add_action('wp_head', function () {
    if (is_month()) {
        echo '<link rel="canonical" href="' . esc_url(home_url('/blog/')) . '" />' . "\n";
    }
}, 1);

Этот подход подходит не всем. Если архивы по датам нужны как самостоятельная навигация, каноникал лучше не подменять, а ограничиться noindex,follow.

Как сделать это через SEO-плагин

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

Логика одна и та же: найти настройки архивов, отключить индексирование для date archives и сохранить изменения. После этого важно убедиться, что плагин действительно выводит noindex, а не только меняет визуальную настройку в админке.

Если вы используете отдельный набор инструментов для технической чистки сайта, например Clearfy Pro, проверьте, не дублирует ли он настройки SEO-плагина. Два разных источника noindex и каноникал-тегов иногда создают путаницу.

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

После правки не ограничивайтесь просмотром страницы в браузере. Нужно проверить именно HTML и реакцию поисковика.

  • Откройте архив по дате и посмотрите исходный код страницы.
  • Убедитесь, что в <head> есть <meta name="robots" content="noindex,follow" />.
  • Проверьте, не дублируется ли тег дважды из-за SEO-плагина и кода темы.
  • В Google Search Console отправьте URL на повторную проверку, если страница уже была в индексе.
  • Посмотрите, не остались ли внутренние ссылки на архивы в меню, виджетах или хлебных крошках.

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

curl -s https://example.com/2024/05/ | grep -i robots

Если тег есть, но страница всё равно долго висит в индексе, это нормально: поисковику нужно время на переобход. Главное — не мешать ему противоречивыми сигналами.

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

Закрыли архив в robots.txt и ждёте удаления из индекса

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

Поставили noindex, но оставили conflicting canonical

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

Добавили код в родительскую тему

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

Закрыли всё подряд через is_archive()

Так можно случайно закрыть рубрики, теги и другие полезные архивы. Проверка должна быть точечной: is_date(), is_year() или is_month() в зависимости от задачи.

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

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

С точки зрения безопасности не давайте редакторам править код темы напрямую на боевом сайте. Лучше вынести правку в отдельный маленький плагин или управлять ею через проверенный SEO-инструмент. Так меньше шанс случайно сломать шаблон и получить белый экран.

Если у вас несколько сред — staging и production — сначала проверьте поведение на тестовой копии. Особенно если архивы по датам участвуют в хлебных крошках, XML-карте сайта или внутренних фильтрах.

Когда лучше не закрывать архивы по датам

Не стоит бездумно закрывать архивы, если они:

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

В таких случаях сначала посмотрите отчёты по страницам в Search Console и только потом принимайте решение. Иногда правильнее доработать шаблон архива: добавить уникальный текст, описание раздела и нормальную перелинковку, чем закрывать страницу от индексации.

Если задача именно техническая, а не редакционная, то noindex,follow для date archives — самый предсказуемый вариант. Он не мешает пользователям и даёт поисковику понятный сигнал без лишней агрессии.

WooCommerce: как автоматически удалять заказы по статусу и дате
09.06.2026
Как добавить временные изменения в шаблон WordPress без плагинов
03.02.2026
WP-Cron в WordPress: настройка и отладка автоматических задач
20.04.2026
Как избежать конфликтов между плагинами в WordPress: практические методы и примеры кода
13.12.2025
Как удалить или исправить файл robots.txt в WordPress
04.12.2025