Архивы по датам в WordPress часто создают страницы вида /2024/05/ или /2024/05/15/, которые почти не дают трафика, дублируют логику рубрик и тегов и засоряют индекс. Если у сайта нет задачи вести читателя по хронологии публикаций, такие страницы обычно только расходуют краулинговый бюджет и размывают качество индекса.
Решение зависит от того, что именно вам нужно: полностью убрать архивы дат из сайта или оставить их для навигации, но закрыть от поиска. Для SEO это два разных сценария, и путать их не стоит.
Что именно можно сделать с архивами дат
У WordPress есть два рабочих подхода.
- Отключить архивы дат полностью — страницы перестанут открываться по адресу архива. Это подходит, если вы не используете календарную навигацию и не хотите держать лишние URL.
- Оставить архивы, но закрыть от индексации — страницы будут доступны пользователям и внутренним ссылкам, но поисковики не должны включать их в выдачу.
Если архивы уже попали в индекс, одного удаления ссылки с сайта обычно недостаточно. Поисковик может ещё какое-то время хранить старые URL, пока не переобойдёт их и не увидит запрет на индексацию или ошибку 404/410.
Когда архивы дат лучше отключать полностью
Полное отключение обычно оправдано на корпоративных сайтах, блогах с рубриками и тегами, а также на проектах, где публикации не привязаны к датам как к важной навигации. Если архивы по месяцам и дням не нужны посетителю, их проще убрать, чем поддерживать и объяснять поисковикам, зачем они существуют.
Но перед отключением проверьте, не ведут ли на такие страницы внутренние ссылки из меню, хлебных крошек, виджетов или старых материалов. Если ссылки есть, после отключения они начнут вести на 404, и это уже будет лишняя проблема.
Как отключить архивы дат в WordPress
Самый надёжный способ — сделать это на уровне темы или небольшого функционального плагина. Так вы не зависите от SEO-плагина и не теряете настройку при смене темы, если вынесете код в отдельный плагин.
Для начала сделайте резервную копию сайта. Если вы добавляете код в functions.php, ошибка в синтаксисе может временно сломать сайт. Безопаснее использовать дочернюю тему или собственный мини-плагин.
Ниже пример, который отключает годовые, месячные и дневные архивы дат и отдаёт 404 для таких запросов:
add_action('template_redirect', function () {
if (is_date()) {
global $wp_query;
$wp_query->set_404();
status_header(404);
nocache_headers();
include get_query_template('404');
exit;
}
});Этот вариант работает на стандартном WordPress и не требует дополнительных плагинов. Он не удаляет архивы из базы данных, а просто делает их недоступными на фронтенде.
Если вам нужно отключить только архивы по месяцам и дням, но оставить годовые, условие можно сузить. Для этого проверяют конкретные типы архивов через is_month() и is_day(). Например:
add_action('template_redirect', function () {
if (is_month() || is_day()) {
global $wp_query;
$wp_query->set_404();
status_header(404);
nocache_headers();
include get_query_template('404');
exit;
}
});Такой подход полезен, если годовые архивы ещё нужны для навигации, а месячные и дневные — нет.
Как закрыть архивы дат от индексации, не ломая доступ
Если архивы нужны посетителям, но не нужны в поиске, лучше не отдавать 404, а поставить запрет на индексацию. В WordPress это можно сделать через SEO-плагин или вручную через мета-тег noindex и заголовок X-Robots-Tag.
Самый практичный вариант — использовать SEO-плагин, если он уже стоит на сайте. В большинстве случаев достаточно открыть настройки архивов и отключить индексацию архивов дат. После этого страницы останутся доступными, но поисковики получат сигнал не включать их в индекс.
Если вы настраиваете вручную, в шаблон архива можно добавить мета-тег:
<meta name="robots" content="noindex,follow">Но на практике это менее удобно, чем настройка через плагин: нужно следить, чтобы тег выводился только на нужных типах архивов, и не забыть про канонические URL и sitemap.
Для большинства сайтов безопаснее именно noindex,follow, а не полное закрытие через robots.txt. Если запретить обход в robots.txt, поисковик может не увидеть директиву noindex на самой странице и дольше держать URL в индексе как известный, но недоступный документ.
Что выбрать: 404, noindex или robots.txt
| Способ | Когда подходит | Что происходит |
|---|---|---|
| 404/410 | Архивы не нужны вообще | Страница исчезает для пользователей и поисковиков |
| noindex,follow | Архив нужен на сайте, но не в поиске | Страница доступна, но не должна попадать в индекс |
| robots.txt | Редко и с осторожностью | Поисковик может не увидеть содержимое страницы и не обработать запрет на индексацию как вы ожидаете |
Если цель — убрать лишние страницы из поиска, а не просто спрятать их от пользователей, обычно лучше выбирать между 404 и noindex. robots.txt здесь не основной инструмент.
Что проверить после отключения архивов
После изменений откройте несколько адресов архивов вручную:
/2024/;/2024/05/;/2024/05/15/.
Если вы отключали архивы полностью, эти URL должны отдавать 404. Если закрывали от индексации, страница должна открываться, а в коде или заголовках должен быть виден запрет на индексацию.
Дальше проверьте:
- нет ли этих ссылок в меню, сайдбаре и хлебных крошках;
- не попали ли архивы дат в XML-карту сайта;
- не остались ли старые URL в индексе через несколько переобходов.
Если архивы продолжают появляться в поиске, это не всегда ошибка настройки. Поисковику нужно время, чтобы обновить индекс. Но если страницы продолжают активно сканироваться, значит, на них всё ещё есть внутренние ссылки или они указаны в sitemap.
Типичные ошибки, из-за которых архивы не исчезают из поиска
Частая ситуация — архивы закрыли в одном месте, но забыли про другое. Например, поставили noindex, но оставили ссылки в карте сайта или в блоке «Последние записи». В результате поисковик всё ещё находит URL и продолжает их обходить.
Ещё одна ошибка — закрывать архивы через robots.txt и ждать, что они быстро выпадут из индекса. На практике это не самый надёжный способ для удаления уже известных страниц.
Если вы используете кэш-плагин или серверный кэш, после изменений очистите кэш. Иначе можно увидеть старую версию страницы и решить, что настройка не сработала.
Если архивы нужны только для удобства, а не для SEO
Иногда архивы дат оставляют как вспомогательную навигацию, но убирают из индекса и из карты сайта. Это разумный компромисс для новостных или контентных проектов, где пользователю может быть полезно пролистать материалы по времени, но поисковику такие страницы не нужны.
В этом сценарии важно не переусердствовать: не нужно одновременно ставить 404, noindex и закрывать URL в robots.txt. Достаточно одного понятного решения. Если страница должна жить для людей, оставьте её доступной и запретите индексацию. Если не нужна никому — отдавайте 404.
Для сайта на WordPress это обычно сводится к простому выбору: либо убрать архивы дат через код, либо закрыть их от индексации в SEO-настройках. Оба варианта рабочие, если после изменений проверить реальные URL и убедиться, что лишние страницы больше не участвуют в индексации.