Страницы внутреннего поиска в WordPress часто попадают в индекс сами по себе: поисковик находит URL вида /?s=запрос, видит набор похожих страниц и начинает тратить краулинговый бюджет на мусор. Для небольшого сайта это обычно не критично, но на проектах с активным поиском по каталогу, блогу или базе знаний такие URL быстро превращаются в источник дублей и лишних обходов.
Ниже — рабочий сценарий: как диагностировать проблему, закрыть поиск от индексации без лишних побочных эффектов и проверить, что решение действительно сработало.
Когда проблема действительно есть
Не каждый сайт обязан закрывать поиск от индексации. Сначала стоит понять, что именно происходит. Если в выдаче уже есть страницы с параметрами поиска, а в site: видно URL с ?s=, значит поисковик их индексирует. Если таких страниц нет, но в отчётах краулинга много запросов к поиску, задача всё равно актуальна: вы экономите обход и снижаете шум.
Что проверить в первую очередь
- Есть ли в индексе URL вида
/page/?s=...или/?s=.... - Не генерирует ли тема отдельные страницы поиска с красивыми ЧПУ и пагинацией.
- Не отдают ли такие страницы код 200 без признаков запрета для роботов.
- Не появляются ли результаты поиска в XML-карте сайта.
Если у вас подключён SEO-плагин, проверьте его настройки для архивов и служебных страниц. Но даже при наличии плагина лучше понимать, что именно он делает: иногда он ставит noindex, но оставляет страницы доступными для обхода, а иногда вообще не трогает поиск.
Диагностика: как понять, что поиск открыт
Самый простой тест — открыть страницу поиска и посмотреть заголовки и HTML. Если в коде есть <meta name="robots" content="index,follow"> или ничего похожего нет, страница может индексироваться. Ещё один признак — отсутствие запрета в robots.txt и наличие ссылок на поиск внутри сайта.
Проверить можно и через консоль:
curl -I