Архивы по датам в WordPress часто появляются сами по себе: /2024/05/, /2024/05/15/ и похожие URL. На небольших блогах они редко дают пользу, но создают лишние страницы, дублируют выдачу и размывают внутренний вес. При этом просто удалить их «в лоб» нельзя: можно сломать хлебные крошки, старые ссылки из поиска и логику темы.
Ниже — практический сценарий: как отключить архивы дат аккуратно, проверить результат и не получить побочные эффекты.
Когда архивы дат действительно мешают
Сначала стоит понять, что именно у вас происходит. Архивы дат бывают полезны только в узких случаях: новостной сайт, журнал с регулярной публикацией по дням, архивный проект, где пользователь реально ищет материалы по периоду. Во всех остальных сценариях они чаще создают шум.
Типичные признаки проблемы
- в индексе есть страницы вида
/2023/,/2023/11/,/2023/11/07/; - в отчётах Search Console появляются страницы с низким CTR и почти нулевыми переходами;
- поиск по сайту и рубрики уже покрывают тот же контент лучше, чем архивы;
- в теме есть ссылки на архивы дат, хотя они не нужны пользователю;
- в sitemap или внутренних ссылках всплывают страницы, которые вы не хотите продвигать.
Если у вас уже есть отдельная статья про закрытие технических страниц, не путайте её с этой задачей: здесь речь именно про архивы дат как тип контента, а не про все служебные URL сразу.
Какой способ отключения выбрать
Есть три рабочих подхода: убрать ссылки на архивы из темы, запретить сами архивы на уровне WordPress и дополнительно закрыть их от индексации. На практике часто нужен не один, а комбинация из двух шагов.
| Способ | Что делает | Плюсы | Минусы |
|---|---|---|---|
| Через код темы/плагина | Отключает генерацию архивов дат или ссылки на них | Контроль на уровне сайта | Нужно править код |
| Через SEO-плагин | Ставит noindex и/или убирает из sitemap | Быстро и без правки ядра | URL могут оставаться доступными |
| Через редирект | Переводит старые архивы на релевантные страницы | Полезно для уже проиндексированных URL | Нужно аккуратно выбрать цель редиректа |
Если задача — именно убрать архивы дат как функциональность, лучше начинать с кода. Если задача — только очистить индекс, можно ограничиться noindex, но это не решает проблему полностью.
Диагностика: где именно живут архивы дат
Перед изменениями проверьте, откуда они генерируются. В WordPress архивы дат могут появляться в нескольких местах: в меню, в виджетах, в хлебных крошках, в sitemap и в шаблонах темы.
Что проверить в админке
- Внешний вид → Меню: нет ли пункта «Архивы» или пользовательской ссылки на дату;
- Виджеты: блоки «Архивы» или «Последние записи» с датами;
- Настройки темы: некоторые темы выводят дату в хлебных крошках;
- SEO-плагин: нет ли отдельной настройки для архивов дат;
- robots.txt: не закрывает ли он только сканирование, но не решает проблему индексации.
Если архивы уже в индексе, одного удаления ссылок мало. Поисковик может ещё долго держать старые URL в базе, пока не увидит явный сигнал: noindex, редирект или 404/410 в зависимости от сценария.
Пошаговое решение через код
Самый надёжный вариант — отключить архивы дат на уровне WordPress и убрать их из навигации. Для этого удобнее использовать небольшой mu-plugin или код в дочерней теме, а не править ядро.
1. Отключить архивы дат в шаблонах
Если тема выводит ссылки на архивы дат через стандартные функции WordPress, можно перехватить их на уровне фильтра. Для многих проектов достаточно убрать саму генерацию ссылок в шаблоне и заменить её на рубрики или теги.
<?php
// functions.php дочерней темы или mu-plugin
add_filter( 'getarchives_where', function( $where, $args ) {
// Не меняем сам запрос, если архивы нужны в админке или в спец-шаблоне.
if ( is_admin() ) {
return $where;
}
// Пример: отключаем вывод архивов дат в публичной части.
return ' AND 1=0 ';
}, 10, 2 );Этот приём жёсткий: он ломает вывод стандартного архива дат там, где используется wp_get_archives(). Если вам нужно не сломать всё полностью, а только убрать ссылки из фронтенда, лучше править шаблон темы и удалить вызов wp_get_archives() или аналогичный блок.
2. Закрыть архивы дат от индексации
Если URL уже существуют и могут быть доступны по старым ссылкам, добавьте noindex для архивов дат. Это можно сделать через SEO-плагин или кодом, если плагин не используется.
<?php
add_action( 'wp_head', function() {
if ( is_date() ) {
echo '<meta name="robots" content="noindex,follow">' . "\n";
}
}, 1 );Здесь важно не ставить nofollow без необходимости. Для архивов дат обычно достаточно noindex,follow: страница не попадает в индекс, но ссылки с неё могут передавать сигнал дальше, если она ещё какое-то время доступна.
3. Перенаправить старые архивы на более полезные страницы
Если архивы уже ранжировались или получали трафик, лучше не отдавать их в пустоту. В таком случае можно сделать 301-редирект на рубрику, страницу блога или архив по месяцу, если он у вас реально нужен.
<?php
add_action( 'template_redirect', function() {
if ( is_date() ) {
wp_safe_redirect( home_url( '/blog/' ), 301 );
exit;
}
} );Редирект на главную — плохая идея, если есть более точная замена. Лучше вести пользователя туда, где он действительно найдёт похожий контент: в раздел блога, в рубрику или на страницу-архив.
Если вы используете SEO-плагин
Во многих проектах проще и безопаснее управлять архивами дат через SEO-плагин, чем кодом. Но важно понимать разницу между «убрать из sitemap», «поставить noindex» и «отключить сам архив». Это не одно и то же.
- noindex — страница может открываться, но не должна попадать в индекс;
- удаление из sitemap — поисковику сложнее быстро находить URL;
- редирект — старый URL сразу ведёт на новую страницу;
- удаление ссылок из темы — снижает вероятность повторного обхода и внутреннего мусора.
Если вы используете Clearfy Pro, проверьте настройки чистки сайта и SEO-опций: в таких плагинах обычно есть инструменты для отключения архивов, дублей и лишних элементов интерфейса. Но даже при наличии плагина я бы всё равно проверил шаблон темы: иногда ссылка на архивы остаётся в хлебных крошках или в кастомном блоке.
Проверка результата после внедрения
После изменений не ограничивайтесь визуальной проверкой. Нужно убедиться, что URL ведут себя так, как вы задумали.
Чек-лист проверки
- откройте старый URL архива даты в браузере;
- проверьте HTTP-статус: 200, 301 или 404/410 — в зависимости от выбранной схемы;
- посмотрите исходный код страницы и убедитесь, что есть
noindex,follow, если вы его добавляли; - проверьте, исчезли ли ссылки на архивы из меню, сайдбара и хлебных крошек;
- сравните sitemap до и после изменений;
- в Search Console отправьте проверку URL и посмотрите, как робот видит страницу.
Для быстрой проверки статуса удобно использовать curl:
curl -I https://example.com/2024/05/Если вы делали редирект, в ответе должен быть 301 и заголовок Location с целевым URL. Если ставили noindex, проверьте именно HTML-страницу, а не только заголовки.
Частые ошибки и как их исправить
Закрыли robots.txt, но архивы остались в индексе
Disallow в robots.txt не удаляет уже известные URL из индекса. Поисковик может перестать их сканировать, но страница ещё долго будет висеть в базе. Если нужен реальный вывод из индекса, используйте noindex или редирект.
Поставили редирект на главную
Это частая ошибка. Для пользователя и поисковика такой редирект слишком общий. Если есть релевантная рубрика, страница блога или тематический архив, ведите туда. Иначе вы теряете смысл перехода и ухудшаете поведенческие сигналы.
Удалили архивы дат, но сломали хлебные крошки
Некоторые темы строят крошки с опорой на дату публикации. После жёсткого отключения архивов проверьте шаблон breadcrumb и логику плагина крошек. Иногда нужно не отключать архивы полностью, а только убрать их из меню и индекса.
Оставили дубли в sitemap
Если URL всё ещё попадают в sitemap, поисковик будет продолжать их обходить. После правок обязательно пересоберите карту сайта и проверьте, что архивы дат из неё исключены.
Практические советы по безопасности и производительности
Если вы правите код, не вносите изменения прямо в родительскую тему. Используйте дочернюю тему или mu-plugin. Так вы не потеряете правки после обновления.
- сначала сделайте резервную копию файлов и базы;
- проверяйте изменения на staging, если сайт уже получает трафик;
- не добавляйте несколько одинаковых фильтров в разные места;
- если используете кэш-плагин, очистите кэш после правок;
- после редиректов проверьте, нет ли цепочек
301 → 301 → 200.
Если у вас много старых архивов и они уже в индексе, лучше действовать поэтапно: сначала убрать ссылки и поставить noindex, затем посмотреть на реакцию поисковика, и только потом решать, нужен ли жёсткий редирект.
В проектах, где важна чистота технической части, удобно сочетать код и инструменты для SEO-уборки. Например, Clearfy Pro закрывает часть рутинных задач по дублям и лишним элементам, но решение по архивам дат всё равно стоит принять осознанно, исходя из структуры сайта, а не «по умолчанию».