Архивы по датам в WordPress часто остаются включёнными по умолчанию, хотя на реальном сайте они редко дают пользу. В результате появляются страницы вида /2024/05/, /2024/05/15/ и похожие URL, которые могут дублировать ленту записей, размывать внутренний вес и засорять индекс. При этом просто удалить архивы «в лоб» — плохая идея: можно сломать старые ссылки, хлебные крошки, sitemap или шаблоны темы.
Ниже — рабочая схема: как понять, нужны ли вам архивы дат, как отключить их безопасно, что делать с уже проиндексированными URL и как проверить результат после внедрения.
Когда архивы дат действительно мешают
На небольших блогах архивы по датам иногда полезны как навигация. Но на большинстве контентных сайтов они создают больше проблем, чем пользы. Особенно если записи и так хорошо распределены по рубрикам, тегам и поиску.
Типичные симптомы
- В индексе есть страницы архивов, которые не приводят трафик.
- В поиске всплывают URL с датами вместо нормальных посадочных страниц.
- В отчётах краулера много однотипных страниц с тонким содержимым.
- Архивы дат дублируют список записей по рубрикам или главной ленте.
- В шаблоне темы есть ссылки на архивы, но они не несут ценности пользователю.
Когда архивы лучше оставить
Не отключайте их только потому, что «так советуют». Если у вас новостной сайт, журнал или проект, где дата — часть смысла контента, архивы могут быть полезны. В таком случае чаще имеет смысл не удалять их полностью, а ограничить индексацию и убрать лишние ссылки из интерфейса.
Диагностика: что именно у вас сейчас работает
Перед правкой проверьте, как архивы дат реализованы в теме и что уже попало в индекс. Это сэкономит время и поможет не сломать навигацию.
Что посмотреть в первую очередь
- Есть ли ссылки на архивы дат в меню, сайдбаре, футере или хлебных крошках.
- Возвращают ли URL архивов код ответа 200 и содержат ли они список записей.
- Есть ли у архивов мета-теги
noindexили каноникал на другую страницу. - Попадают ли такие URL в XML-карту сайта.
- Использует ли тема функции вроде
get_archives(),wp_get_archives()или кастомные ссылки на даты.
Быстрая проверка через браузер и консоль
Откройте несколько архивов дат и посмотрите исходный код страницы. Если видите обычный список записей без ограничений для поисковиков, значит архивы доступны для индексации.
curl -I https://example.com/2024/05/
Если сервер отдаёт 200 OK, страница существует. Дальше проверьте HTML на наличие noindex и канонического URL.
Как отключить архивы дат: три рабочих подхода
Выбор зависит от того, хотите ли вы полностью убрать архивы, оставить их для пользователей или только закрыть от индексации. Ниже — варианты от мягкого к жёсткому.
| Подход | Что делает | Плюсы | Минусы |
|---|---|---|---|
| Плагин | Закрывает архивы, чистит SEO-настройки | Быстро, без кода | Зависимость от плагина |
| Код в теме/му-плагине | Удаляет архивы и редиректит URL | Контроль и минимум лишнего | Нужна аккуратность |
| Только noindex | Оставляет страницы доступными, но не индексирует | Мягкая миграция | URL остаются живыми |
Вариант 1. Закрыть архивы через SEO-плагин
Если у вас уже стоит плагин для технической оптимизации, проще всего использовать его настройки для архивов. Например, в Clearfy Pro есть инструменты для управления дублями и техническими страницами. Это удобнее, чем вручную править тему, если вы не хотите поддерживать собственный код.
Но важно понимать: плагин должен не просто скрыть ссылки, а корректно обработать индексацию и, при необходимости, редиректы. После настройки всё равно проверьте итоговый HTML и ответы сервера.
Вариант 2. Отключить архивы дат кодом
Если нужен точечный контроль, лучше сделать это в дочерней теме или в небольшом mu-plugin. Такой подход не зависит от интерфейса плагина и проще для ревью.
<?php
/**
* Plugin Name: Disable Date Archives
*/
add_action('template_redirect', function () {
if (is_date()) {
wp_redirect(home_url('/'), 301);
exit;
}
});
Этот вариант отправляет все архивы дат на главную. В реальном проекте это не всегда лучший редирект: если у вас есть подходящая страница-замена, лучше вести туда. Например, на рубрику, раздел новостей или страницу архива по теме.
Вариант 3. Оставить доступ, но закрыть от индексации
Если архивы нужны пользователям, но не нужны поиску, можно оставить их открытыми и добавить noindex. Это мягче, чем редирект, и не ломает старые ссылки из закладок или внешних источников.
<?php
add_action('wp_head', function () {
if (is_date()) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
});
Но не забывайте: если архивы уже в индексе, одного noindex может быть мало. Поисковику нужно время, чтобы переобойти страницы и убрать их из выдачи.
Что делать с уже проиндексированными URL
Если архивы дат уже попали в поиск, просто убрать ссылки недостаточно. Нужен понятный сигнал: либо 301 на релевантную страницу, либо noindex с последующим переобходом.
Если URL нужно удалить полностью
Ставьте редирект на ближайшую по смыслу страницу. Для архивов месяца это может быть раздел рубрики или страница блога. Для дневных архивов чаще всего логичнее вести на архив месяца или на главную ленту.
Важно не редиректить всё подряд на главную без разбора, если есть более точная замена. Иначе пользователь теряет контекст, а поисковик видит слабую релевантность.
Если URL нужно оставить
Оставляйте 200 OK, добавляйте noindex,follow и убирайте ссылки из интерфейса, если они не нужны пользователю. Это снижает вероятность повторного обхода и уменьшает шум в отчётах.
Проверка результата после внедрения
После правки не ограничивайтесь визуальной проверкой. Нужно убедиться, что сервер, HTML и внутренние ссылки ведут себя так, как вы задумали.
Чек-лист проверки
- Архивы дат больше не доступны по старым URL или корректно редиректятся.
- На страницах архивов нет случайного
index,follow, если вы хотели закрыть их от индексации. - В меню, сайдбаре и футере не осталось лишних ссылок на даты.
- XML-карта сайта не содержит архивов дат.
- Внутренние ссылки на записи не изменились и не ведут в тупик.
- В Search Console нет всплеска ошибок 404 после внедрения.
Как проверить технически
curl -I https://example.com/2024/05/
Если стоит редирект, вы должны увидеть 301 и новый Location. Если выбран вариант с noindex, откройте HTML и проверьте мета-тег robots.
<?php
// Проверка в шаблоне: выводится ли архив даты
if (is_date()) {
error_log('Date archive detected: ' . $_SERVER['REQUEST_URI']);
}
Такой лог полезен на этапе отладки, если вы не уверены, какие именно шаблоны темы отрабатывают на архивных URL.
Частые ошибки и как их исправить
Редирект всех архивов на главную
Это частая ошибка. Главная редко является хорошей заменой для архивов дат. Лучше подобрать страницу по смыслу: рубрика, раздел новостей, архив месяца или тематический хаб.
Удалили ссылки, но не закрыли сами URL
Если страницы доступны напрямую, поисковик продолжит их обходить. Скрыть ссылку в меню недостаточно — нужно либо редиректить, либо ставить noindex.
Забыли про хлебные крошки и шаблоны темы
Иногда архивы дат всплывают в хлебных крошках, блоках «Архив», виджетах или кастомных шаблонах. После правки проверьте не только главную навигацию, но и все места, где тема может генерировать ссылки автоматически.
Сломали sitemap
Если архивы были включены в карту сайта, а потом вы их отключили, убедитесь, что они исчезли из sitemap. Иначе поисковик будет продолжать ходить по старым URL дольше, чем нужно.
Практика безопасности и производительности
Если вы вносите изменения кодом, не правьте файлы родительской темы напрямую. Используйте дочернюю тему или mu-plugin. Так обновление не затрёт ваши правки.
- Перед изменениями сделайте бэкап файлов и базы.
- Проверяйте редиректы на staging-окружении.
- Не ставьте несколько SEO-плагинов одновременно, если они управляют robots и canonical.
- После внедрения очистите кэш страницы и CDN, если он есть.
Если у вас уже стоит плагин для технической чистки и SEO-оптимизации, иногда проще централизовать такие настройки в одном месте, чем размазывать логику по теме и нескольким расширениям.
Что в итоге должно измениться
После корректной настройки архивы дат либо исчезают из публичной навигации и редиректятся на релевантные страницы, либо остаются доступными, но не участвуют в индексации. В обоих случаях у вас не должно быть лишних дублей, а старые URL не должны вести в пустоту.
Если после внедрения в индексе всё ещё висят старые страницы, это нормально на коротком промежутке. Главное — чтобы сервер уже отдавал правильный ответ, а в шаблонах не осталось ссылок на ненужные архивы.