Как отключить архивы дат в WordPress и убрать дубли страниц

Архивы по датам в WordPress часто не нужны на небольших и средних сайтах: они создают лишние страницы вида /2024/05/, /2024/05/12/, дублируют логику рубрик и тянут на себя краулинговый бюджет. Проблема не в самом наличии архивов, а в том, что они редко дают пользователю полезный сценарий перехода. Если у вас нет редакционного календаря, новостной ленты или задачи показывать материалы по дням, такие архивы обычно лучше убрать из индекса и, при необходимости, скрыть из интерфейса.

Когда архивы дат становятся проблемой

Типичный симптом — в поиске появляются страницы архивов с тонким контентом: несколько анонсов без уникального текста, одинаковые заголовки в хлебных крошках, а иногда и десятки URL, которые отличаются только датой. На сайтах с регулярными публикациями это быстро разрастается. По логам видно, что бот ходит по архивам, а в Search Console такие страницы либо не приносят трафик, либо конкурируют с основными разделами.

Если архивы дат у вас используются осознанно, например для новостного проекта, не нужно их ломать. Но если это обычный корпоративный блог, документация или контентный сайт, чаще всего достаточно оставить сами записи и рубрики, а дату-архивы закрыть.

Диагностика: что именно нужно отключать

Сначала проверьте, какие архивы реально доступны на сайте. В WordPress это обычно:

  • архивы по году: /2024/;
  • архивы по месяцу: /2024/05/;
  • архивы по дню: /2024/05/12/;
  • виджеты и ссылки в теме, которые ведут на эти страницы.

Проверка простая: откройте несколько таких URL в браузере и посмотрите, есть ли там уникальная ценность. Если это просто список записей без дополнительного смысла, это кандидат на отключение. Дополнительно можно посмотреть, индексируются ли такие страницы в поиске через оператор site: или в отчёте по страницам в Search Console.

Что важно не перепутать

Не стоит путать архивы дат с архивами рубрик и тегов. Рубрики часто нужны для навигации и структуры сайта, а теги — уже отдельный вопрос, который решается по ситуации. В этой статье речь именно о датах, потому что они чаще всего не несут самостоятельной пользы.

Как отключить архивы дат в WordPress

Есть три рабочих подхода: через SEO-плагин, через код темы или через редирект на уровне сайта. Выбор зависит от того, хотите ли вы просто убрать страницы из индекса или полностью отключить их доступность.

Подход Когда подходит Плюсы Минусы
Плагин SEO/чистки Нужно быстро закрыть архивы без правки темы Меньше кода, проще поддержка Зависимость от настроек плагина
Код в теме или mu-plugin Нужен точный контроль Прозрачно, без лишних экранов настроек Нужно аккуратно тестировать обновления
Редирект Архивы уже в индексе и их надо убрать из обхода Быстро убирает доступ к URL Нужно продумать целевую страницу

Вариант 1: отключить архивы дат через код

Если вам нужно именно убрать архивы дат из WordPress, а не только закрыть их от индексации, можно отключить генерацию этих архивов фильтром date_archive_link не получится — такого универсального фильтра для отключения нет. Практичнее использовать проверку на запрос архива и отдавать 404, если это дата-архив. Для этого лучше добавить код в mu-plugin или в дочернюю тему.

<?php
/**
 * Plugin Name: Disable Date Archives
 */

add_action('template_redirect', function () {
    if (is_date()) {
        global $wp_query;
        $wp_query->set_404();
        status_header(404);
        nocache_headers();
        include get_query_template('404');
        exit;
    }
});

Этот вариант не удаляет сами URL из истории, но делает их недоступными для пользователей и ботов. Если архивы уже где-то были проиндексированы, поисковику потребуется время, чтобы переобойти их и убрать из выдачи.

Вариант 2: закрыть архивы дат от индексации

Если вам нужно сохранить доступ к архивам для внутренней навигации, но убрать их из индекса, используйте noindex. Это можно сделать через SEO-плагин или вручную через wp_robots.

<?php
add_filter('wp_robots', function (array $robots) {
    if (is_date()) {
        $robots['noindex'] = true;
        $robots['follow'] = true;
    }
    return $robots;
});

Такой вариант удобен, когда архивы по датам нужны редактору или пользователю, но не должны конкурировать в поиске. Обратите внимание: если на странице стоит noindex, не нужно одновременно закрывать её в robots.txt, иначе поисковик может не увидеть директиву и страница будет висеть в индексе дольше.

Вариант 3: редирект на рубрику или архив записей

Если архивы дат не нужны вообще, можно отправлять их на более полезную страницу. Но редирект должен быть логичным: не на главную без причины, а на рубрику, раздел блога или страницу архива записей, если она у вас есть.

<?php
add_action('template_redirect', function () {
    if (is_date()) {
        wp_redirect(home_url('/blog/'), 301);
        exit;
    }
});

Редирект полезен, когда на архивы уже есть внешние ссылки или внутренние переходы. Но не делайте цепочки редиректов и не отправляйте все даты на нерелевантную страницу — это ухудшает поведение пользователей и может выглядеть как мягкая ошибка для поисковика.

Пошаговое решение без лишнего риска

  1. Определите, нужны ли архивы дат как часть навигации.
  2. Если не нужны — выберите 404 или 301-редирект.
  3. Если нужны, но не должны индексироваться — поставьте noindex, follow.
  4. Проверьте, нет ли внутренних ссылок в меню, сайдбаре и футере.
  5. Обновите карту сайта, если архивы дат туда попадали через кастомную логику.
  6. После выкладки проверьте ответ сервера и мета-robots на нескольких URL.

Как проверить, что всё сработало

Проверка должна быть не только визуальной. Откройте несколько URL архивов дат и убедитесь, что поведение соответствует выбранному сценарию.

  • для 404: страница реально отдаёт код ответа 404, а не просто показывает шаблон ошибки;
  • для редиректа: URL уходит на нужную страницу с кодом 301;
  • для noindex: в HTML есть корректный meta robots или заголовок, который вы добавили через код/плагин;
  • в Search Console: в отчёте по страницам не должно расти количество мусорных URL из архивов дат;
  • в логах сервера: бот не должен бесконечно ходить по цепочкам редиректов.

Если используете WP-CLI, можно быстро проверить статус ответа через curl на сервере или локально:

curl -I https://example.com/2024/05/

В ответе смотрите на строку HTTP/1.1 404 Not Found или HTTP/2 301. Если там 200 OK, значит правило не сработало или срабатывает не там, где нужно.

Частые ошибки и как их исправить

Закрыли в robots.txt, но не убрали из индекса

Это частая ошибка. Если URL уже в индексе, один Disallow не решает проблему. Поисковик может продолжать хранить страницу без переобхода. Для удаления из выдачи лучше использовать noindex или 301/404, в зависимости от сценария.

Поставили редирект на главную

Редирект всех дат на главную выглядит как технический костыль. Пользователь теряет контекст, а поисковик получает нерелевантную замену. Если нет подходящей страницы назначения, лучше 404, чем случайный редирект.

Отключили архивы, но оставили ссылки в теме

Меню, виджеты и блоки в футере могут продолжать вести на несуществующие URL. После отключения проверьте шаблоны темы и настройки виджетов. Иногда достаточно убрать блок «Архивы» из сайдбара, чтобы не плодить битые переходы.

Смешали несколько способов сразу

Например, поставили noindex, закрыли в robots.txt и ещё добавили редирект. В итоге диагностика становится сложнее, а поведение ботов — менее предсказуемым. Выберите один основной сценарий и придерживайтесь его.

Практические советы по безопасности и производительности

Если правите поведение архивов кодом, не вносите изменения прямо в родительскую тему. Лучше использовать дочернюю тему или mu-plugin, чтобы обновление не затёрло правки. Для небольших технических правил это самый надёжный способ.

Ещё один момент — кеш. После внедрения изменений очистите серверный кеш, кеш плагина и, если есть, CDN. Иначе вы можете смотреть на старую версию страницы и решить, что код не работает. Это особенно заметно на сайтах с агрессивным кешированием HTML.

Если вам нужно не только закрыть архивы дат, но и системно почистить сайт от дублей, служебных страниц и лишних SEO-артефактов, имеет смысл посмотреть в сторону инструментов уровня Clearfy Pro: https://wpshop.ru/plugins/clearfy. Но даже с плагином важно понимать, что именно он меняет, и проверять результат вручную.

Когда лучше не отключать архивы дат

Если сайт живёт новостями, а дата — часть пользовательского сценария, архивы могут быть полезны. То же касается проектов, где пользователи реально ищут материалы по периоду публикации. В таком случае не ломайте структуру ради абстрактной «чистоты» индекса. Лучше ограничиться noindex для слабых страниц и оставить рабочие архивы там, где они нужны.

Если же архивы дат не несут ценности, отключение обычно даёт более аккуратную структуру сайта: меньше дублей, меньше мусорных URL и проще контроль индексации. Главное — не делать это вслепую и после правки обязательно проверить код ответа, мета-роботы и внутренние ссылки.

Как закрыть страницы поиска WordPress от индексации и убрать дубли в выдаче
10.09.2026
Как отключить архивы дат в WordPress и убрать дубли страниц
13.09.2026
Как отключить XML sitemap в WordPress и заменить его своим вариантом
10.09.2026
Как закрыть дубли страниц авторов в WordPress через robots.txt и noindex
03.09.2026
Как отключить XML-RPC в WordPress и проверить, что он действительно закрыт
06.09.2026