Архивы по датам в WordPress часто остаются включёнными по умолчанию, хотя на реальном сайте они не дают пользы ни пользователю, ни поиску. Особенно это заметно на новостных, корпоративных и контентных проектах, где записи и так нормально распределяются по рубрикам, тегам и внутренним ссылкам. В итоге в индексе появляются страницы вида /2024/05/, /2024/05/12/ и похожие, которые дублируют список материалов и размывают структуру сайта.
Ниже — рабочий сценарий: когда архивы дат лучше отключить, как это сделать без поломки сайта, что проверить после внедрения и какие ошибки встречаются чаще всего.
Когда архивы дат действительно мешают
Сами по себе архивы дат не являются ошибкой. Проблема начинается, когда они создают лишние страницы без самостоятельной ценности. Обычно это видно в таких случаях:
- на сайте нет редакционного смысла сортировать материалы по дням или месяцам;
- архивы дат дублируют ленту записей, рубрики или теги;
- в выдаче появляются страницы с очень малым количеством записей;
- поисковик тратит обход на технические страницы вместо полезных материалов;
- в шаблоне темы есть ссылки на архивы дат, хотя они не нужны пользователю.
Если сайт ведётся как блог с сильной хронологией, архивы могут быть полезны. Но если это справочник, корпоративный сайт, медиа с рубриками или проект с длинным жизненным циклом контента, архивы дат чаще становятся лишним слоем.
Диагностика: как понять, что проблема именно в архивах дат
Перед правкой кода стоит проверить, действительно ли эти страницы участвуют в индексации и дают мусорный трафик. Не нужно отключать всё подряд только потому, что архивы существуют.
Что смотреть в первую очередь
- отчёт по страницам в Google Search Console;
- поиск по сайту через
site:example.ru 2024/05или похожий запрос; - логи обхода, если они доступны;
- структуру ссылок в теме: есть ли переходы на архивы дат из шапки, футера или сайдбара;
- наличие страниц архивов в XML-карте сайта.
Если архивы дат уже попали в индекс, не стоит ждать мгновенного исчезновения. Сначала нужно убрать причину появления страниц, затем дать поисковику переобойти сайт.
Как отключить архивы дат в WordPress
Есть два нормальных пути: через код в теме или через SEO/технический плагин. Если нужен точечный контроль и минимальная зависимость от интерфейса, удобнее код. Если на сайте уже используется плагин для технической чистки, можно закрыть задачу там, но важно понимать, что именно он делает.
| Подход | Плюсы | Минусы |
|---|---|---|
Код в functions.php или мини-плагине |
Прозрачно, без лишней логики, легко проверить | Нужно аккуратно вносить изменения и не потерять их при смене темы |
| Плагин для технической оптимизации | Быстрее для редактора, меньше ручной работы | Нужно доверять настройкам и не дублировать функции в коде |
Только noindex |
Мягкий вариант, если архивы ещё нужны пользователям | Страница остаётся доступной и может продолжать обходиться |
Вариант 1: отключить архивы дат через код
Если архивы дат не нужны вообще, можно отключить их регистрацию и убрать ссылки на них из шаблонов. Для этого подойдёт небольшой код в дочерней теме или в собственном плагине.
<?php
add_action('init', function () {
// Отключает архивы по дате: /YYYY/, /YYYY/MM/ и /YYYY/MM/DD/
remove_action('wp_head', 'wp_shortlink_wp_head');
});
add_filter('date_rewrite_rules', '__return_empty_array');
add_filter('month_rewrite_rules', '__return_empty_array');
add_filter('year_rewrite_rules', '__return_empty_array');
add_action('template_redirect', function () {
if (is_date()) {
wp_safe_redirect(home_url('/'), 301);
exit;
}
});
Этот пример решает только часть задачи. Он убирает саму возможность открывать архивы дат и перенаправляет уже существующие URL на главную. На практике лучше направлять их не на главную, а на ближайшую релевантную страницу: рубрику, раздел или архив записей, если он есть и полезен.
Если нужен более аккуратный редирект, можно подставить целевую страницу вручную:
<?php
add_action('template_redirect', function () {
if (is_date()) {
wp_safe_redirect(home_url('/blog/'), 301);
exit;
}
});
Вариант 2: оставить страницы, но закрыть их от индексации
Если архивы дат используются посетителями, но не должны попадать в поиск, лучше не ломать URL, а выставить noindex. Это мягче и безопаснее для сайтов, где архивы встроены в навигацию.
В WordPress это можно сделать через фильтр wp_robots:
<?php
add_filter('wp_robots', function (array $robots) {
if (is_date()) {
$robots['noindex'] = true;
$robots['nofollow'] = true;
}
return $robots;
});
Такой вариант не удаляет страницы из сайта, но говорит поисковику не индексировать их и не передавать по ним вес. Если тема или SEO-плагин уже управляет robots-мета, проверьте, не конфликтует ли этот код с существующей логикой.
Вариант 3: убрать ссылки на архивы дат из темы
Даже если архивы закрыты, ссылки на них могут оставаться в шаблоне. Это лишний шум в интерфейсе и дополнительный обход для роботов. Проверьте:
- виджеты с архивами;
- ссылки в футере;
- блоки в сайдбаре;
- навигацию в шаблонах
header.php,footer.php,sidebar.php.
Если архивы добавлены через виджет, их проще удалить в админке. Если ссылка зашита в тему, убирайте её в дочерней теме, а не правьте исходники родительской темы.
Проверка результата после внедрения
После правки важно не ограничиваться открытием пары URL в браузере. Нужна проверка по нескольким уровням: ответ сервера, мета-роботы, ссылки и индексируемость.
Чек-лист проверки
- архивы дат открываются с редиректом или отдают
noindexв зависимости от выбранного сценария; - в HTML нет лишних ссылок на архивы дат в шаблоне;
- страницы не попадают в XML-карту сайта;
- в Search Console не растёт число обнаруженных, но не проиндексированных архивов;
- основные рубрики и записи остались доступны без изменений.
Проверить ответ можно через curl:
curl -I https://example.ru/2024/05/
Если вы настроили редирект, в ответе должен быть код 301 и заголовок Location. Если выбрали noindex, откройте страницу и посмотрите исходный код: там должен быть корректный robots-мета или заголовок, который реально отдаёт ваш стек.
Дополнительно проверьте, что архивы не остались в sitemap. Если sitemap генерирует SEO-плагин, иногда архивы дат нужно отключать отдельно в его настройках, а не только кодом темы.
Частые ошибки и как их исправить
Редирект на главную без логики
Это частая ошибка: все архивы дат отправляют на /. Для пользователя это выглядит как потеря контекста, а для поиска — как слабый сигнал о релевантности. Лучше вести на раздел, который заменяет архив по смыслу.
Отключили архивы, но оставили ссылки в шаблоне
В этом случае роботы и пользователи продолжают ходить по старым URL, а часть страниц может отдавать 404. После отключения обязательно проверьте меню, виджеты и блоки в теме.
Смешали код и плагин
Если SEO-плагин уже ставит noindex на архивы дат, а в теме добавлен редирект, можно получить конфликт. Снаружи это выглядит как нестабильное поведение: то 301, то 200, то мета-роботы не совпадают с ожиданиями. Оставьте один источник истины.
Не учли старые URL в индексе
Даже после отключения архивы не исчезают мгновенно. Старые адреса нужно либо корректно редиректить, либо закрыть от индексации и дождаться переобхода. Если просто удалить шаблон без редиректа, поисковик может держать 404 дольше, чем хотелось бы.
Безопасность и производительность: что стоит учесть
Любые правки, связанные с архивами, лучше делать в дочерней теме или в отдельном мини-плагине. Так вы не потеряете изменения после обновления темы. Перед внедрением сохраните резервную копию и проверьте код на тестовой копии сайта.
Если на сайте много технических страниц, имеет смысл смотреть на проблему шире: иногда архивы дат — только один из источников дублей и лишних URL. В таких случаях полезно проверить и другие настройки чистки сайта. Например, в Clearfy Pro есть инструменты для отключения части технических страниц и лишних элементов, но применять их стоит только после проверки, что они не конфликтуют с текущим SEO-стеком.
Для производительности сам по себе отказ от архивов дат не даёт магического ускорения. Но он может снизить количество бесполезных обходов и упростить структуру сайта. Это особенно заметно на проектах с большим числом страниц и слабой внутренней перелинковкой.
Когда архивы дат лучше не отключать
Есть сценарии, где архивы по датам действительно нужны:
- новостной сайт, где дата — важная часть навигации;
- проект с регулярными подборками по месяцам;
- редакционный архив, который используется как отдельный раздел;
- сайт, где на архивы есть стабильный пользовательский спрос.
В таких случаях не спешите удалять всё целиком. Иногда достаточно убрать их из индекса, оставить для навигации и подчистить шаблон, чтобы они не мешали поиску.
Если нужен более широкий аудит технических дублей и лишних страниц, имеет смысл смотреть на сайт как на систему: архивы, пагинацию, теги, авторов, ленты и служебные URL. Именно в связке эти элементы чаще всего создают лишний шум, а не по отдельности.