Если в поиске всплывают страницы поиска по сайту, архивы по датам, вложения, пагинация и другие служебные URL, индекс быстро засоряется. Для WordPress это обычная ситуация: движок создаёт много технических адресов, которые полезны пользователю и роботу, но редко нужны в выдаче. Задача не в том, чтобы «спрятать всё подряд», а в том, чтобы оставить в индексе только те страницы, которые действительно могут приносить трафик.
Ниже — практический разбор, что именно закрывать, какими способами это делать и как не сломать сайт в процессе.
Какие служебные страницы обычно закрывают
В WordPress чаще всего мешают индексации такие типы URL:
- страницы внутреннего поиска — результаты по запросам вида
?s=; - архивы по датам — год, месяц, иногда день;
- вложения — отдельные страницы медиафайлов, если они не несут самостоятельной ценности;
- страницы пагинации — вторая, третья и последующие страницы архивов, рубрик, тегов и списков записей;
- служебные таксономии — теги, авторские архивы, пустые или почти пустые рубрики, если они не нужны в поиске;
- другие технические URL, которые создаёт тема или плагин и которые дублируют основной контент.
Не все из них нужно закрывать автоматически. Например, архив рубрики с хорошим набором материалов может быть полезной посадочной страницей. А вот страница поиска почти всегда бесполезна для индекса: её содержимое меняется от запроса к запросу и не даёт стабильной ценности.
Что лучше использовать: noindex, robots.txt или canonical
Для служебных страниц важно понимать разницу между тремя инструментами. Они решают похожую задачу, но работают по-разному.
| Способ | Что делает | Когда подходит | Ограничение |
|---|---|---|---|
noindex | Просит поисковик не показывать страницу в выдаче | Для страниц, которые должны открываться пользователю, но не нужны в индексе | Страница может ещё какое-то время оставаться в индексе, пока робот не переобойдёт её |
robots.txt | Запрещает роботу обходить URL | Для экономии краулингового бюджета и отсечения явного мусора | Запрет в robots.txt не гарантирует удаление из индекса, если URL уже известен поисковику |
canonical | Подсказывает основную версию страницы | Для дублей и близких по смыслу страниц | Не заменяет noindex, если страница вообще не должна попадать в поиск |
На практике для служебных страниц WordPress чаще всего используют noindex, а robots.txt — только как дополнительную меру для явных технических разделов. Если закрыть страницу в robots.txt, но не поставить noindex, поисковик может продолжать хранить её в индексе без описания или с устаревшим сниппетом.
Как закрыть от индексации страницы поиска WordPress
Страницы поиска — один из самых частых источников мусора. В WordPress они обычно имеют вид /?s=запрос. Такие URL почти всегда нужно закрывать от индексации.
Самый надёжный вариант — добавить noindex, follow на страницы результатов поиска. Тогда поисковик не будет показывать их в выдаче, но сможет переходить по ссылкам внутри них, если это нужно.
Если вы используете SEO-плагин, проверьте, умеет ли он задавать мета-тег robots для страниц поиска. Во многих случаях это делается без кода. Если плагина нет, можно добавить фильтр в functions.php дочерней темы или в собственный небольшой плагин:
add_action( 'wp_head', function () {
if ( is_search() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
} );Этот вариант рабочий, но если у вас уже стоит SEO-плагин, лучше не дублировать мета-теги из двух источников. Два разных robots-тега на одной странице — частая причина путаницы.
Архивы дат: когда их закрывать, а когда оставить
Архивы по датам часто создаются автоматически и почти не несут пользы для пользователя. Если сайт не новостной и не архивный по смыслу, такие страницы обычно стоит закрыть от индексации. Иначе в выдаче начинают появляться страницы вида «2024», «март 2024» и похожие, которые дублируют логику рубрик и тегов.
Если у вас блог с редкими публикациями, архивы дат почти наверняка не нужны в поиске. Если же сайт построен вокруг хронологии — например, это новостной проект или журнал, — решение зависит от структуры контента. В таком случае архивы могут быть полезны как навигация, но всё равно не всегда должны конкурировать с основными материалами в поиске.
Технически закрывать архивы дат можно так же, как и другие служебные страницы: через noindex в SEO-плагине или через код, если плагина нет. Главное — не блокировать их в robots.txt раньше, чем поисковик увидит noindex, если ваша цель именно убрать URL из выдачи.
Страницы вложений: почему их лучше не индексировать
Страница вложения в WordPress — это отдельная страница, которая открывает изображение, файл или другой медиаобъект как самостоятельный URL. На небольших сайтах это часто бесполезный дубль: сама картинка уже есть в записи, а отдельная страница вложения не добавляет смысла.
Если у вас не настроена осмысленная работа с медиаархивом, страницы вложений лучше закрыть от индексации или перенаправить на файл/родительскую запись. Второй вариант зависит от темы и плагинов, но для SEO чаще полезнее именно убрать вложение из индекса, чем оставлять его как пустую страницу.
На практике есть два сценария:
- страница вложения нужна пользователю — тогда оставляйте её доступной, но ставьте
noindex; - страница вложения не нужна вообще — можно настроить редирект на родительскую запись или сам файл, если это соответствует структуре сайта.
Если вы не уверены, что делает ваша тема с вложениями, сначала проверьте несколько URL в браузере и через просмотр исходного кода: иногда тема уже перенаправляет attachment pages, и дополнительная настройка не нужна.
Пагинация: что закрывать, а что не трогать
С пагинацией нужно быть аккуратнее. Страницы вида /page/2/, /page/3/ и дальше сами по себе не всегда мусор. Они нужны для навигации по большим архивам, рубрикам и спискам записей. Если закрыть их бездумно, можно ухудшить обход сайта и усложнить доступ к старым материалам.
Обычно не стоит закрывать пагинацию в robots.txt, если она является частью нормальной структуры сайта. Для поисковика это не ошибка. Проблема возникает, когда в индекс попадают десятки или сотни слабых страниц пагинации, которые не дают самостоятельной ценности и конкурируют с основными материалами.
Что делать на практике:
- если пагинация нужна только как навигация, а не как посадочные страницы, оставьте её доступной, но не делайте на ней акцент в индексации;
- если на страницах пагинации почти нет уникального контента, не продвигайте их отдельно;
- если SEO-плагин позволяет, проверьте, не ставит ли он
noindexна архивные страницы пагинации по умолчанию — это зависит от настроек и версии плагина.
Здесь нет универсального правила для всех сайтов. На крупных проектах пагинация часто должна оставаться доступной, а вот в поиске её лучше не раздувать за счёт слабых дублей. Решение зависит от структуры каталога, объёма контента и того, как поисковик уже воспринимает сайт.
Как закрывать служебные URL без плагина
Если вы не используете SEO-плагин или хотите точечно управлять индексацией, можно добавить собственные правила. Для WordPress это обычно делается через дочернюю тему или мини-плагин. Такой подход подходит, когда нужно закрыть конкретные типы страниц и не зависеть от интерфейса стороннего плагина.
Пример для страниц поиска и архивов дат:
add_action( 'wp_head', function () {
if ( is_search() || is_date() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
} );Если нужно добавить больше условий, используйте встроенные условные теги WordPress: is_search(), is_date(), is_attachment(), is_author(), is_tag(), is_category(). Но не закрывайте рубрики и теги автоматически только потому, что они «архивы». Для многих сайтов это как раз полезные страницы, которые должны оставаться в поиске.
Если вы вносите код вручную, делайте это только после резервной копии. Ошибка в functions.php может привести к белому экрану или недоступности админки, особенно если правите файл через встроенный редактор темы.
Как проверить, что закрытие работает
После настройки не ограничивайтесь визуальной проверкой. Откройте несколько служебных URL и посмотрите исходный код страницы: в <head> должен быть мета-тег robots с нужным значением, например noindex,follow.
Дальше проверьте:
- страница открывается в браузере и не отдаёт ошибку;
- в исходном коде нет конфликтующих указаний от разных плагинов;
- в Search Console нужный URL постепенно уходит из индекса или получает статус, соответствующий
noindex; - страницы, которые должны оставаться в поиске, не получили случайный запрет.
Если страница всё ещё отображается в выдаче, это не всегда означает, что настройка не сработала. Поисковику нужно время, чтобы переобойти URL и обновить индекс. Для старых страниц это может занять не один день.
Что обычно ломают при чистке индекса
Самая частая ошибка — закрыть в robots.txt всё подряд и ждать, что страницы исчезнут из поиска. Если URL уже известен поисковику, одного запрета на обход часто недостаточно. Вторая типичная ошибка — случайно закрыть полезные архивы, рубрики или страницы пагинации, которые реально нужны пользователю.
Ещё одна проблема — дублирование настроек. Например, SEO-плагин уже ставит noindex, а вы вручную добавляете второй мета-тег или одновременно запрещаете URL в robots.txt. В итоге диагностика становится сложнее, а поведение поисковика — менее предсказуемым.
Если нужен практичный ориентир, действуйте так: сначала определите, какие URL действительно не должны быть в поиске; затем выберите для них noindex; robots.txt используйте только как дополнительный барьер для явного технического мусора; после этого проверьте исходный код и индексацию в панели вебмастера. Такой порядок обычно даёт чистый индекс без лишних побочных эффектов.