Архивы по датам в WordPress часто создают лишние страницы: /2024/08/, /2024/08/15/ и похожие URL. На небольшом блоге это может быть незаметно, но на сайте с регулярной публикацией такие страницы быстро начинают конкурировать с основными рубриками и записями. Проблема обычно не в самих архивах, а в том, что они дублируют контент, дают тонкие страницы и размывают внутреннюю перелинковку.
Ниже — рабочая схема: как понять, нужны ли вам архивы дат, как отключить их без лишних побочных эффектов и как проверить, что поисковики действительно перестали считать их полезными страницами.
Когда архивы дат лучше отключить
Если на сайте нет редакционного смысла в хронологии, архивы дат почти всегда лишние. Они редко помогают пользователю найти контент лучше, чем рубрики, теги или поиск. Особенно это заметно на сайтах с несколькими авторами, где архивы дат просто повторяют ленту записей по месяцам.
Оставлять их имеет смысл, если:
- у вас новостной или журнальный формат, где дата — часть навигации;
- архивы используются в шаблоне темы как основной способ просмотра старых публикаций;
- по ним есть стабильный трафик и они реально решают пользовательскую задачу.
Во всех остальных случаях лучше либо закрыть такие страницы от индексации, либо полностью убрать их из публичного доступа.
Диагностика: что именно индексируется сейчас
Перед изменениями стоит понять, какие архивы уже доступны и как они выглядят для поисковиков. Проверьте несколько типовых URL:
/2024/— годовой архив;/2024/08/— месячный архив;/2024/08/15/— дневной архив;/author/username/— если рядом есть архивы автора, их тоже стоит оценить отдельно.
Если на этих страницах мало уникального текста, а в выдаче они уже присутствуют, это типичный кандидат на отключение или noindex. Посмотрите исходный код страницы: нет ли там meta robots с noindex, нет ли каноникала на сам архив, и не закрывает ли тема архивы только визуально, оставляя их доступными по прямому URL.
Что проверить в первую очередь
- есть ли архивы в XML-карте сайта;
- отдают ли архивы код
200 OK; - есть ли на них уникальный заголовок и текст;
- не дублируют ли они главную страницу блога или рубрики;
- не ведут ли на них внутренние ссылки из меню, футера и хлебных крошек.
Варианты решения: плагин, код или редирект
Убирать архивы можно по-разному. Выбор зависит от того, хотите ли вы просто закрыть их от индексации или полностью убрать из сайта.
| Подход | Что делает | Плюс | Минус |
|---|---|---|---|
| Плагин SEO | Ставит noindex и управляет архивами | Быстро и без кода | Зависимость от настроек плагина |
| Код в теме/плагине | Отключает архивы или меняет поведение WordPress | Точный контроль | Нужно аккуратно тестировать |
| Редирект | Перенаправляет архивы на рубрику или блог | Убирает лишние URL | Не всегда логично для пользователя |
Если вам нужно именно убрать архивы дат из индекса, а не ломать структуру сайта, чаще всего достаточно noindex. Если архивы вообще не нужны, лучше отключить их на уровне WordPress и при необходимости настроить 301-редирект.
Пошаговое решение через код
Ниже — практичный вариант: запретить доступ к архивам дат и отправлять пользователя на главную страницу блога или в рубрику, если у вас есть понятная замена. Код лучше размещать в небольшом функциональном плагине или в functions.php дочерней темы.
<?php
add_action('template_redirect', function () {
if (is_date()) {
wp_safe_redirect(home_url('/blog/'), 301);
exit;
}
});Этот вариант подходит, если архивы дат не нужны вообще. Но у него есть важный нюанс: если на архивы уже есть внешние ссылки или они попадали в индекс, поисковику нужно время, чтобы переобходить старые URL. Поэтому после редиректа проверьте, что целевая страница действительно соответствует ожиданию пользователя.
Если вы не хотите редиректить, а хотите только скрыть архивы от индексации, можно добавить noindex в <head> для датовых архивов:
<?php
add_action('wp_head', function () {
if (is_date()) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
});Это мягче, чем редирект: пользователь всё ещё может открыть архив, а поисковик не будет считать его целевой страницей. Для большинства контентных сайтов это более безопасный сценарий.
Если нужен точечный контроль через SEO-плагин
Когда сайт уже использует SEO-плагин, проще управлять архивами через его настройки, чем писать свой код. Это особенно удобно, если нужно одновременно закрыть архивы дат, страницы автора и другие служебные разделы. Важно только не смешивать разные механизмы: если плагин уже ставит noindex, не нужно дублировать это в теме.
Проверьте, как плагин формирует robots-мета и не конфликтует ли он с кэшем. Иногда админ видит одно, а в публичной версии из-за кэширования остаётся старый meta robots.
Проверка результата после внедрения
После изменений не ограничивайтесь открытием страницы в браузере. Нужно проверить и HTTP-ответ, и HTML, и индексацию.
- Откройте архив даты в режиме инкогнито и убедитесь, что редирект или noindex работают.
- Проверьте код ответа через
curl -I https://example.com/2024/08/. - Посмотрите исходный код страницы: есть ли
noindex,followили каноникал на нужный URL. - Если был редирект, убедитесь, что он именно
301, а не302. - Проверьте XML-карту сайта: архивы дат не должны туда попадать, если вы их отключили.
Пример проверки заголовков:
curl -I https://example.com/2024/08/Если в ответе остался 200 OK, а вы ожидали редирект, значит правило не сработало или его перехватывает другой плагин. Если редирект есть, но ведёт не туда, проверьте приоритеты хуков и наличие правил в .htaccess или конфигурации сервера.
Частые ошибки и как их исправить
Ставят noindex, но оставляют архивы в карте сайта
Это частая ошибка: поисковик продолжает регулярно находить URL через sitemap и тратит на них обход. Решение простое — убрать архивы дат из XML-карты сайта, если ваш SEO-плагин это позволяет, или отключить их генерацию на уровне настроек.
Делают редирект на главную
Технически это работает, но для пользователя часто выглядит как потеря контекста. Лучше вести на блог, рубрику или страницу архива записей, если она у вас есть. Главная подходит только если она действительно выполняет роль ленты.
Смешивают редирект и noindex одновременно
Если URL уже редиректится, поисковик не увидит meta robots на старой странице. Обычно достаточно одного механизма. Для полного удаления URL из обхода — редирект. Для мягкого исключения из индекса — noindex.
Не проверяют кэш
После правок старый HTML может продолжать отдаваться из плагина кэша, CDN или серверного кэша. Если вы не видите изменений, сначала очистите все уровни кэширования, а потом уже ищите ошибку в коде.
Практические советы по безопасности и производительности
Если вы отключаете архивы через код, не вносите правки напрямую в родительскую тему. Используйте дочернюю тему или небольшой mu-plugin, чтобы изменения не потерялись после обновления. Это особенно важно, если сайт обслуживается несколькими разработчиками.
Ещё один момент — не плодите одинаковую логику в нескольких местах. Если архивы дат уже отключены в SEO-плагине, не дублируйте правила в functions.php. Двойная логика усложняет отладку и часто приводит к конфликтам после обновлений.
Если вам нужно навести порядок не только с архивами дат, но и с дублями, служебными страницами и техническим мусором, имеет смысл посмотреть в сторону инструментов для чистки WordPress. Например, Clearfy Pro закрывает часть типовых задач по удалению дублей и технической оптимизации без ручного кода.
Когда лучше не отключать архивы полностью
Если архивы дат уже приносят трафик, участвуют во внутренней навигации или используются как часть редакционной структуры, резкое удаление может ухудшить поведение пользователей. В таком случае сначала переведите их в noindex, посмотрите на логи и статистику, а уже потом решайте, нужен ли редирект.
Для новостных и событийных сайтов архивы иногда полезны как навигационный слой. Но даже там стоит ограничить индексацию дневных архивов, если они не дают уникальной ценности.
Рабочий ориентир простой: если страница архива не отвечает на отдельный пользовательский запрос лучше, чем рубрика или поиск, её не нужно продвигать как самостоятельную посадочную страницу.