Как закрыть страницы поиска и архивов от индексации в WordPress

Внутренний поиск, архивы по датам, меткам и авторам часто попадают в индекс, хотя не дают поисковому трафику и создают дубли. Проблема обычно всплывает после аудита в Google Search Console: в отчёте много URL вида ?s=, /page/2/, /tag/, /author/, а полезные страницы получают меньше внимания краулера.

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

Когда это действительно нужно

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

Признаки проблемы

  • в индексе есть URL с параметром ?s=;
  • поисковик показывает страницы пагинации архивов вместо основных материалов;
  • в отчёте «Страницы» много URL с низкой ценностью: теги, авторы, даты, внутренний поиск;
  • на сайте есть дубли заголовков и сниппетов между архивами и записями;
  • краулер тратит время на служебные страницы, а новые материалы индексируются медленно.

Диагностика: что закрывать, а что оставить

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

Тип страницыОбычно индексировать?Комментарий
Внутренний поискНетПочти всегда мусорный трафик и дубли
Архивы авторовЗависитДля одного автора на сайте часто не нужны
Архивы метокЗависитЕсли метки используются хаотично, лучше закрыть
Архивы категорийЧаще даЕсли это важная структура сайта, оставляют в индексе
Архивы по датамЧаще нетРедко дают пользу для поиска

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

Решение через код: точечный noindex для поиска и архивов

Ниже пример для functions.php дочерней темы или собственного мини-плагина. Он добавляет noindex,follow для страниц поиска, архивов авторов и дат, а также для страниц меток. Категории остаются без изменений.

add_action('wp_head', function () {
    if (is_admin()) {
        return;
    }

    $noindex = false;

    if (is_search()) {
        $noindex = true;
    }

    if (is_author()) {
        $noindex = true;
    }

    if (is_date()) {
        $noindex = true;
    }

    if (is_tag()) {
        $noindex = true;
    }

    if ($noindex) {
        echo '<meta name="robots" content="noindex,follow" />' . "\n";
    }
}, 1);

Этот вариант работает просто: если страница относится к нежелательному типу, в <head> выводится мета-тег robots. Для поисковика это сигнал не индексировать страницу, но продолжать переходить по ссылкам внутри неё.

Если нужен более аккуратный контроль

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

add_action('wp_head', function () {
    if (is_admin()) {
        return;
    }

    $robots = [];

    if (is_search() || is_tag() || is_author() || is_date()) {
        $robots[] = 'noindex';
        $robots[] = 'follow';
    }

    if ($robots) {
        echo '<meta name="robots" content="' . esc_attr(implode(',', $robots)) . '" />' . "\n";
    }
}, 1);

Такой подход удобен, если позже вы захотите менять правила без переписывания всей логики. Но не дублируйте этот код вместе с SEO-плагином, который уже добавляет свои robots-теги: поисковик увидит конфликтующие сигналы.

Пошаговая настройка без лишних рисков

  1. Сделайте резервную копию файлов темы или подготовьте мини-плагин.
  2. Проверьте, какие архивы уже закрывает SEO-плагин.
  3. Добавьте код только для тех типов страниц, которые действительно не нужны в индексе.
  4. Очистите кеш сайта и CDN, если он используется.
  5. Проверьте исходный код страниц поиска и архивов.
  6. Отправьте важные URL на переобход в Search Console, если ранее они уже были в индексе.

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

Проверка должна быть не «на глаз», а по факту. Откройте страницу поиска, например /?s=тест, и посмотрите исходный код. В <head> должен появиться тег meta name="robots" content="noindex,follow".

Дальше проверьте несколько архивов:

  • страницу автора;
  • архив по дате;
  • страницу метки;
  • страницу пагинации архива, если она у вас есть.

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

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

Конфликт с SEO-плагином

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

Закрыли не тот архив

Иногда разработчик по ошибке закрывает is_category() вместо is_tag(). В результате из индекса пропадают важные рубрики. Перед публикацией проверьте логику на тестовом сайте и пройдитесь по реальным URL.

Использовали noindex в robots.txt

Для Google директива noindex в robots.txt не является рабочим способом управления индексацией. Если нужно именно исключить страницу из индекса, используйте мета-тег robots или заголовок X-Robots-Tag.

Ожидали мгновенного удаления из выдачи

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

Когда лучше использовать плагин, а когда код

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

Код удобнее, если:

  • нужно закрыть только часть архивов;
  • вы ведёте несколько проектов с одинаковой политикой индексации;
  • не хотите тянуть лишний функционал в админку;
  • нужно быстро проверить гипотезу на одном типе страниц.

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

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

Не вставляйте код прямо в родительскую тему, если она обновляется. Лучше использовать дочернюю тему или мини-плагин. Так вы не потеряете настройку после обновления.

Если сайт большой, не добавляйте тяжёлую логику в wp_head. Для простого условия по типу страницы это нормально, но не стоит в этом же месте делать запросы к базе или сложные проверки.

И ещё один момент: если архивы реально полезны пользователям и приносят трафик, не закрывайте их только потому, что они «похожи на дубли». Сначала смотрите на данные, потом на настройки. В WordPress слишком легко переборщить с запретами и случайно убрать из индекса то, что работало.

Как автоматически устанавливать приватность записей в WordPress
18.02.2026
Как удалить загруженные файлы в WordPress после удаления плагинов
21.01.2026
Руководство по созданию пользовательских типов записей в WordPress
19.11.2025
Как создать настройки плагина WordPress с использованием Settings API
20.12.2025
Как отладить проблемы с кешированием в WordPress: пошаговое руководство
10.11.2025
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше