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

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

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

Какие страницы поиска нужно закрывать

В WordPress страница результатов поиска обычно выглядит так: / ?s=запрос или в ЧПУ-варианте как URL с параметром поиска. Именно эти страницы и нужно исключать из индекса. Саму форму поиска, если она есть в шапке, сайдбаре или в блоках темы, трогать не нужно.

Важно не путать:

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

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

Самый надёжный способ: meta robots noindex для страниц поиска

Для WordPress самый практичный вариант — отдавать на страницах поиска метатег noindex. Тогда поисковый робот может перейти по URL, но не должен добавлять его в индекс. Это лучше, чем просто запрещать обход через robots.txt, потому что для удаления уже известных URL из выдачи поисковикам обычно нужен именно сигнал noindex.

Если у вас установлен SEO-плагин, сначала проверьте его настройки. Многие плагины умеют закрывать страницы поиска без кода. Но если нужен ручной способ, его можно добавить в functions.php дочерней темы или через небольшой функциональный плагин.

Для классического WordPress можно использовать такой код:

add_action( 'wp_head', function () {
    if ( is_search() ) {
        echo '<meta name="robots" content="noindex,follow">' . "\n";
    }
} );

Здесь is_search() срабатывает только на страницах результатов поиска. Значение noindex,follow означает: не индексировать саму страницу, но не мешать роботам переходить по ссылкам на ней. Для поисковых страниц это обычно нормальный вариант.

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

Что делать с robots.txt и почему он не решает задачу сам по себе

Частая ошибка — закрыть поиск в robots.txt и считать задачу решённой. Для страниц поиска это не лучший основной метод. Если робот не может зайти на URL, он может не увидеть и директиву noindex, а уже известный адрес иногда продолжит висеть в индексе как URL без содержимого.

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

Если у вас уже есть правило в robots.txt для ?s=, не удаляйте его без проверки. На некоторых сайтах это правило добавлено давно, и после его изменения поведение индекса может стать менее предсказуемым. Сначала настройте noindex, потом смотрите, как поисковики реагируют.

Как закрыть поиск через SEO-плагин

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

Проверьте такие параметры:

  • индексация страниц поиска;
  • индексация внутренних результатов поиска, если плагин разделяет эти настройки;
  • наличие метатега robots на страницах с ?s=;
  • исключение этих URL из sitemap, если они туда попали по ошибке.

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

Когда нужен отдельный код в теме

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

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

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

Как проверить, что страницы поиска действительно закрыты

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

<meta name="robots" content="noindex,follow">

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

Дальше проверьте:

  • нет ли этих URL в XML-карте сайта;
  • не закрыты ли они случайно через Disallow в robots.txt вместо noindex;
  • не создаёт ли тема отдельные страницы поиска с другим шаблоном;
  • не кэшируется ли старый HTML на стороне плагина кэша или сервера.

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

Типичные ошибки, из-за которых поиск всё равно индексируется

На практике проблемы обычно сводятся к нескольким сценариям:

  • добавили Disallow в robots.txt, но не поставили noindex;
  • настроили правило только для одной темы, а после смены шаблона оно перестало срабатывать;
  • кэш отдаёт старую версию страницы без метатега;
  • SEO-плагин и ручной код выводят противоречивые директивы;
  • в индекс попали старые URL, и их просто не успели переобойти.

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

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

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

Как настроить canonical в WordPress вручную
11.10.2026
Как ограничить доступ к wp-admin в WordPress по IP
24.10.2026
Как закрыть от индексации страницы поиска WordPress
14.10.2026
Как защитить страницу входа в WordPress от брутфорса
28.10.2026
Как убрать из индекса страницы вложений и медиафайлов в WordPress
17.10.2026