Архивы по датам в WordPress часто остаются включенными по умолчанию, хотя на большинстве сайтов они не несут пользы: дублируют записи, создают тонкие страницы и размывают обход робота. Но отключать их «в лоб» опасно, если на них уже есть входящие ссылки, трафик из поиска или они используются в навигации темы.
Ниже — рабочий сценарий: как найти, где именно у вас живут архивы дат, что отключать на уровне темы или плагина, как не сломать старые URL и как проверить результат после правок.
Когда архивы дат действительно мешают
Проблема не в самом факте существования архивов, а в том, что они часто индексируются без пользы. Типичный набор симптомов:
- в индексе есть страницы вида
/2024/05/или/2024/05/17/; - в Search Console появляются URL с низкой ценностью и почти без переходов;
- архивы дублируют ленту записей или рубрик;
- на сайте есть пагинация архивов, но контент на страницах почти одинаковый;
- тема выводит ссылки на архивы дат в сайдбаре или в блоке метаданных записи.
Если архивы используются как реальная навигация для новостного проекта или журнала, отключать их полностью не стоит. В таком случае лучше оставить доступ, но убрать из индексации и сократить внутренние ссылки на них.
Диагностика: где именно включены архивы дат
Сначала проверьте, откуда они вообще появляются. В WordPress это может быть:
- настройка постоянных ссылок;
- шаблон темы, который выводит дату в метаданных и ссылку на архив;
- виджет «Архивы»;
- SEO-плагин, который уже ставит
noindexили canonical; - старые ссылки из контента, которые уже разошлись по сайту.
Быстрый способ проверить наличие архивов — открыть несколько типовых URL вручную и посмотреть, отдают ли они контент, редирект или 404. Если есть доступ к серверу, полезно прогнать список через curl:
curl -I https://example.com/2024/05/
curl -I https://example.com/2024/05/17/Если ответ 200 OK, страница доступна для обхода. Если 301 или 410, уже лучше, но нужно проверить, не остались ли внутренние ссылки на эти адреса.
Как отключить архивы дат: варианты и компромиссы
Есть три нормальных пути. Выбор зависит от того, нужен ли вам полный запрет или только чистка индекса.
| Подход | Что делает | Когда подходит | Минус |
|---|---|---|---|
| Плагин SEO/чистки | Ставит noindex, canonical или отключает архивы | Если нужен быстрый и безопасный вариант без кода | Зависимость от настроек плагина |
| Код в теме/плагине | Отключает архивы на уровне WordPress | Если нужен точный контроль | Нужно аккуратно тестировать обновления темы |
| Редирект на релевантную страницу | Уводит старые URL на рубрику, блог или главную | Если архивы уже в индексе и получают трафик | Не всегда есть точный аналог страницы |
Если у вас уже стоит SEO-плагин, сначала проверьте его настройки. Часто достаточно закрыть архивы дат от индексации, не трогая шаблоны темы. Если же нужен именно отказ от самих архивов, можно отключить их через код.
Вариант 1: отключить архивы дат кодом
Для сайтов, где архивы не нужны вообще, можно убрать их через фильтр date_rewrite_rules и дополнительно запретить вывод архивных ссылок в теме. Но на практике чаще используют более простой и понятный способ — отключение архивов через pre_get_posts с редиректом на 404 или на главную. Ниже пример для дочерней темы или небольшого mu-plugin:
<?php
add_action('template_redirect', function () {
if (is_date()) {
wp_safe_redirect(home_url('/'), 301);
exit;
}
});Этот вариант грубый, но рабочий. Его стоит применять только если вы уверены, что архивы дат не нужны ни пользователям, ни поиску, ни внутренним ссылкам. Если у вас уже есть трафик на такие страницы, лучше сначала сделать редирект на ближайшую логичную страницу: рубрику, архив месяца или страницу блога.
Вариант 2: оставить доступ, но закрыть от индексации
Если архивы нужны для навигации, но не должны попадать в поиск, используйте noindex, follow через SEO-плагин или собственный вывод meta robots. В коде это можно сделать так:
<?php
add_filter('wp_robots', function ($robots) {
if (is_date()) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
});Это не отменяет саму страницу, но снижает риск индексации мусорных архивов. Важно: если у вас уже подключен SEO-плагин, не дублируйте правила в двух местах. Иначе можно получить конфликт мета-тегов.
Вариант 3: убрать ссылки на архивы из темы
Иногда проблема не в индексации, а в том, что тема щедро раздает ссылки на архивы дат в карточках записей. Тогда даже при noindex робот продолжает регулярно ходить по этим URL. Проверьте шаблоны single.php, content.php, entry-meta и сайдбар.
Если ссылка выводится через функцию темы, ее лучше убрать в дочерней теме или через фильтр, если он предусмотрен разработчиком. Универсального хука здесь нет, поэтому сначала ищите конкретный шаблонный файл.
Пошаговая схема внедрения
- Соберите список URL архивов дат, которые уже доступны на сайте.
- Проверьте, есть ли на них трафик и внешние ссылки.
- Определите, нужен ли архив пользователю или только поисковику.
- Выберите один сценарий: редирект, noindex или полное отключение.
- Уберите внутренние ссылки на архивы из темы и виджетов.
- Проверьте canonical, robots meta и HTTP-ответ.
Если вы работаете через плагин, сначала меняйте настройки на тестовой копии сайта. Для кода — лучше вынести решение в отдельный mu-plugin, чтобы оно не исчезло после обновления темы.
Как проверить, что всё сработало
После внедрения проверьте не только визуально, но и технически:
- открывается ли старый URL архива;
- какой HTTP-статус он возвращает;
- есть ли на странице meta robots
noindex; - не остались ли внутренние ссылки на архивы в меню, сайдбаре и карточках;
- не появился ли лишний canonical на главную вместо релевантной страницы.
Для быстрой проверки можно посмотреть HTML страницы и заголовки ответа:
curl -I https://example.com/2024/05/
curl -s https://example.com/2024/05/ | grep -i robotsЕсли вы поставили редирект, убедитесь, что он ведет именно туда, куда вы планировали, а не на цепочку из нескольких переходов. Для SEO это важно: длинные цепочки редиректов ухудшают обход и усложняют диагностику.
Частые ошибки и как их исправить
Отключили архивы, но забыли про старые ссылки
Если URL уже есть в контенте, поисковик и пользователи будут продолжать на них заходить. Решение — либо 301 на релевантную страницу, либо аккуратный 410 Gone, если замены нет и трафика тоже нет.
Поставили noindex, но оставили десятки внутренних ссылок
В этом случае робот все равно тратит обход на ненужные страницы. Уберите ссылки из шаблонов, виджетов и хлебных крошек, если они там есть.
Сделали редирект на главную для всех архивов
Это частая ошибка. Массовый редирект на главную выглядит как мягкая ошибка для пользователя и не всегда помогает поиску понять, куда перенести вес. Лучше редиректить на наиболее близкую страницу по смыслу.
Дублируете правила в плагине и в коде
Если SEO-плагин уже ставит noindex, а тема дополнительно выводит свои мета-теги, можно получить конфликт. Оставьте одно место управления правилом.
Безопасность и производительность
С точки зрения производительности отключение архивов дат полезно, если они часто обходятся ботами и не несут ценности. Но не стоит превращать это в набор хаотичных редиректов в .htaccess без проверки. Ошибка в регулярке может задеть другие URL и сломать сайт.
Если нужен более удобный способ чистить технические дубли и управлять индексированием, имеет смысл смотреть в сторону инструментов, которые умеют работать с архивами и мета-robots без ручного кода. Например, в Clearfy Pro есть набор настроек для чистки сайта и SEO-правил: https://wpshop.ru/plugins/clearfy.
Но даже с плагином логика остается той же: сначала понять, зачем архив существует, потом выбрать один способ обработки, а уже после этого проверять заголовки, индексацию и внутренние ссылки.
Что проверить через неделю после изменений
Не ограничивайтесь разовой проверкой. Через несколько дней откройте Search Console и посмотрите, не продолжают ли архивы попадать в отчет по страницам. Если вы сделали редирект, проверьте логи сервера: туда не должны массово сыпаться запросы на старые URL без результата.
Если архивы были частью навигации, полезно пройтись по сайту как пользователь: не исчезли ли ссылки из блока метаданных, не сломалась ли логика хлебных крошек и не стало ли сложнее добраться до записей по датам. В WordPress такие правки часто затрагивают не только SEO, но и UX, поэтому проверка должна быть ручной, а не только по статус-коду.