Страницы внутреннего поиска WordPress часто попадают в индекс как тонкие и дублирующиеся URL: один и тот же запрос может генерировать десятки вариантов, а содержимое таких страниц обычно не несёт самостоятельной ценности для поиска. Если не ограничить их индексацию, поисковик тратит краулинговый бюджет на мусорные страницы, а в отчётах появляются лишние URL с параметром ?s=.
Ниже разберём, как закрыть такие страницы корректно: через noindex, заголовок X-Robots-Tag и при необходимости через редирект на страницу поиска без индексации. Это не про «спрятать всё от Google», а про точечную настройку именно для search-страниц.
Когда проблема действительно есть
Сначала проверьте, что в индексе или в обходе поисковика действительно есть страницы поиска. Типичные признаки:
- в Search Console появляются URL вида
/?s=запрос; - в логах сервера много обращений к поисковым страницам с разными параметрами;
- в выдаче находятся страницы поиска с пустым или почти пустым контентом;
- на сайте есть форма поиска, которая генерирует отдельный URL для каждого запроса.
Если поиск используется только для навигации по сайту, а не как полноценный публичный раздел, индексировать такие страницы обычно не нужно. Исключение — если у вас специально сделаны полезные страницы результатов поиска с уникальным контентом и фильтрами. Тогда подход будет другим.
Что именно нужно закрывать
В WordPress стандартный поиск работает через параметр s. Это значит, что проблема чаще всего выглядит так: https://example.com/?s=seo. Иногда тема или плагин поиска добавляют красивые URL, но логика остаётся той же — это страницы результатов поиска, а не отдельные материалы.
Важно не путать их с архивами рубрик, меток или пагинацией. Для поиска нужен отдельный сценарий, потому что у него другая семантика и другой риск дублей.
Диагностика: как понять, что закрытие нужно именно вам
Перед правками проверьте текущую разметку и заголовки ответа. Это поможет понять, уже стоит noindex или нет, и не дублирует ли его SEO-плагин.
curl -I