Архивы по датам в WordPress часто появляются сами по себе, даже если сайт не ведёт новостную ленту. Для поисковика это обычно слабые страницы: контент там дублирует записи, а ценности для пользователя почти нет. Проблема не в самих архивах, а в том, что они начинают индексироваться, получать внутренние ссылки и раздувать структуру сайта.
Ниже разберём, как безопасно отключить такие архивы, что именно проверить до и после, и где чаще всего ломают SEO при попытке «просто закрыть всё в robots.txt».
Когда архивы дат действительно мешают
Сценарий обычно один из трёх:
- сайт — блог или корпоративный ресурс, где публикации не привязаны к календарю;
- в выдаче появляются страницы вида
/2024/05/, которые дублируют список записей; - внутренние ссылки на архивы есть в теме, хлебных крошках или виджетах, и они продолжают обходиться роботами.
Если архивы дат уже в индексе, простое удаление шаблона из темы не решит вопрос. Нужно одновременно убрать страницу из навигации, отдать корректный ответ серверу и не сломать переходы со старых URL.
Диагностика: что проверить перед изменениями
Сначала убедитесь, что проблема именно в датовых архивах, а не в категориях или авторах. Откройте несколько URL вручную и посмотрите, что они возвращают:
/2024/;/2024/05/;/2024/05/15/.
Если страница открывается и показывает список записей, значит архив существует и может индексироваться. Дополнительно проверьте:
- есть ли ссылки на эти архивы в меню, сайдбаре, хлебных крошках;
- не генерирует ли SEO-плагин отдельные sitemap для архивов;
- не отдаются ли они с
noindexуже сейчас; - не используются ли они в старых внешних ссылках, если сайт давно работает.
Что смотреть в исходном коде и заголовках
Откройте страницу архива и проверьте:
- наличие
<meta name="robots"; - канонический URL;
- ответ сервера:
200,301или404; - нет ли в HTML ссылок на архивы дат в блоках «Архивы» или в футере.
Если архивы уже дают 200 и доступны по прямому URL, их лучше отключать на уровне WordPress, а не только прятать от индексации.
Рабочие варианты: плагин, код или редирект
| Подход | Когда подходит | Плюс | Минус |
|---|---|---|---|
| SEO-плагин | Если уже используется Yoast, Rank Math или похожий инструмент | Быстро, без правки темы | Нужно проверить, не остаются ли ссылки и sitemap |
| Код в теме или mu-plugin | Если нужен точный контроль без лишних настроек | Предсказуемое поведение | Требует аккуратного теста после обновлений |
| 301 на главную или релевантный раздел | Если архивы уже в индексе и есть трафик на старые URL | Сохраняет часть переходов | Нужно выбрать правильную целевую страницу |
Пошаговое решение через код
Если вам нужно именно отключить архивы дат, а не просто закрыть их от индексации, удобнее сделать это через template_redirect. Такой вариант не зависит от SEO-плагина и работает на уровне WordPress.
<?php
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;
}
} );Если архивы дат вам нужны для навигации, но не для индексации, можно не редиректить их, а добавить noindex, follow. Это менее жёсткий вариант, но он не убирает URL из обхода полностью.
<?php
add_filter( 'wp_robots', function ( array $robots ) {
if ( is_date() ) {
$robots['noindex'] = true;
$robots['follow'] = true;
}
return $robots;
} );Для большинства сайтов с нерегулярной публикацией лучше всё же редирект, а не просто noindex. Так вы убираете лишние страницы из структуры и не плодите бесполезные точки входа.
Если используете SEO-плагин
В популярных SEO-плагинах обычно есть настройка архивов автора, дат и таксономий. Но интерфейсы отличаются, поэтому проверяйте не название пункта, а результат: архив должен либо отдавать редирект, либо быть закрыт от индексации, либо вообще не существовать в навигации.
После изменения настроек обязательно проверьте:
- не остались ли старые URL в XML sitemap;
- не генерируется ли canonical на сам архив;
- не появился ли дубль через пагинацию архива.
Если в теме есть блок «Архивы», его тоже стоит убрать. Иначе робот продолжит видеть ссылки, даже если сами страницы закрыты.
Проверка результата после внедрения
После правки откройте несколько старых URL и убедитесь, что поведение соответствует выбранной схеме:
- при редиректе — код ответа
301, а целевая страница открывается без цепочки переходов; - при
noindex— в HTML есть нужная директива, а страница не попадает в sitemap; - внутренние ссылки на архивы больше не ведут из меню и виджетов.
Проверять лучше в трёх местах:
- браузер и просмотр исходного кода;
- инструменты для проверки ответа сервера;
- панель вебмастера, где видно, как робот обходит URL.
Если архивы были уже в индексе, изменения могут проявляться не сразу. Это нормально: поисковику нужно время, чтобы переобойти старые адреса и обновить статус.
Частые ошибки и как их исправить
Закрыли в robots.txt и остановились
Это частая ошибка. Disallow не удаляет URL из индекса, если он уже известен поисковику. Для старых страниц нужен редирект, noindex или удаление с корректным ответом сервера.
Сделали 302 вместо 301
Если архивы отключаются надолго, временный редирект только путает поисковую систему. Для постоянного переноса используйте 301.
Редиректнули всё на главную
Это не всегда ошибка, но часто плохой компромисс. Если у сайта есть тематический блог, лучше перенаправлять на релевантный раздел, а не на универсальную главную страницу.
Оставили ссылки в теме
Даже при закрытых архивах ссылки в меню, сайдбаре и футере продолжают создавать лишние обходы. После внедрения проверьте шаблоны темы и виджеты.
Не учли пагинацию
Архивы дат могут иметь страницы /page/2/ и дальше. Если закрываете архив, убедитесь, что пагинация тоже уходит в редирект или noindex, а не остаётся доступной отдельно.
Чек-лист перед публикацией изменений
- Проверены URL датовых архивов в браузере.
- Выбран один сценарий: редирект, noindex или удаление ссылок.
- Старые URL не остаются в sitemap.
- В теме убраны ссылки на архивы дат.
- Проверен код ответа:
301или200сnoindex. - Нет цепочек редиректов и циклов.
- Проверена пагинация архивов.
Практика по безопасности и производительности
Если вы вносите код вручную, лучше не править functions.php активной темы, а вынести логику в небольшой mu-plugin. Так настройка не пропадёт при обновлении темы и её проще отключить при отладке.
<?php
/**
* Plugin Name: Disable Date Archives
*/
add_action( 'template_redirect', function () {
if ( is_date() ) {
wp_safe_redirect( home_url( '/blog/' ), 301 );
exit;
}
} );Если на сайте уже есть лишние архивы, похожие задачи по чистке дублей и служебных страниц удобно решать комплексно. В таких сценариях часто помогает Clearfy Pro: он закрывает часть SEO- и технических настроек без ручного ковыряния шаблонов, но всё равно требует проверки результата после включения.
Главная идея простая: не прятать проблему, а убрать бесполезный URL из структуры сайта и оставить поисковику понятный путь к нужному разделу.