Служебные страницы в WordPress часто попадают в индекс не потому, что сайт «плохой», а потому что движок по умолчанию открывает архивы, внутренний поиск, страницы авторов и дат. Для небольшого блога это может быть допустимо, но на большинстве проектов такие URL создают дубли, размывают релевантность и забирают краулинговый бюджет.
Ниже — рабочая схема: что именно закрывать, чем это делать и как проверить, что поисковик действительно перестал считать эти страницы полезными для индексации.
Какие страницы обычно нужно закрывать
Не стоит закрывать всё подряд. Сначала разберитесь, какие типы страниц реально несут ценность. На практике чаще всего речь идёт о таких URL:
- архивы авторов на сайтах, где контент публикует один человек;
- архивы дат, если они не используются как навигация;
- внутренний поиск WordPress с параметром
?s=; - страницы вложений, если они индексируются отдельно и не нужны как посадочные;
- служебные архивы таксономий, которые дублируют основной контент.
Если архив автора — это полноценная страница с описанием, подборкой материалов и трафиком, закрывать её бездумно не нужно. То же самое относится к датам на новостных проектах. Решение всегда зависит от структуры сайта, а не от универсального рецепта.
Диагностика проблемы перед изменениями
Сначала проверьте, что именно уже есть в индексе и как это выглядит для поисковика. Самый быстрый способ — посмотреть отчёты в Google Search Console и выполнить ручной поиск по сайту.
Что проверить руками
- есть ли в индексе URL вида
/author/username/; - попадают ли страницы вида
/2026/08/или похожие архивы дат; - индексируются ли результаты внутреннего поиска
/?s=запрос; - не открываются ли страницы вложений как отдельные страницы с тонким контентом;
- не создаёт ли SEO-плагин отдельные title и description для этих страниц.
Если у вас уже есть sitemap, откройте его и посмотрите, не попали ли туда служебные URL. Это частая причина, почему поисковик продолжает их обходить даже после правок в шаблоне.
Что лучше: плагин, код или оба варианта
Для большинства сайтов удобнее закрывать индексацию через SEO-плагин, а код использовать только там, где нужен точечный контроль. Если у вас уже стоит плагин, который умеет управлять мета-robots и архивами, это обычно самый безопасный путь. Если плагина нет или нужна тонкая логика, можно сделать это кодом в теме или мини-плагине.
| Подход | Когда подходит | Минусы |
|---|---|---|
| SEO-плагин | Нужно быстро закрыть архивы и поиск без кода | Зависимость от интерфейса и настроек плагина |
| Код в теме/мини-плагине | Нужна точечная логика для конкретных типов страниц | Нужно следить за обновлениями и тестировать вручную |
| Комбинированный вариант | Часть настроек закрывается плагином, часть — кодом | Легко запутаться, если не зафиксировать правила |
Если нужен плагин для общей SEO-гигиены и удаления дублей, имеет смысл смотреть в сторону решений класса Clearfy Pro: у таких инструментов обычно есть настройки для архивов, мета-robots и служебных страниц. Но даже с плагином важно понимать, что именно вы закрываете и почему.
Пошаговое решение через код
Если вам нужно закрыть индексацию без SEO-плагина, можно добавить фильтр wp_robots. Это современный способ управлять директивами robots для конкретных типов страниц.
add_filter( 'wp_robots', function( array $robots ) {
if ( is_search() || is_author() || is_date() ) {
$robots['noindex'] = true;
$robots['nofollow'] = true;
}
return $robots;
} );Этот вариант работает на уровне вывода robots meta. Он не удаляет URL из сайта и не ломает навигацию, но говорит поисковику не индексировать такие страницы. Для большинства задач этого достаточно.
Если нужно отдельно закрыть страницы вложений, лучше сделать редирект на родительскую запись, когда она есть. Это уменьшает число бесполезных страниц и убирает тонкий контент из обхода.
add_action( 'template_redirect', function() {
if ( is_attachment() ) {
$parent_id = wp_get_post_parent_id( get_the_ID() );
if ( $parent_id ) {
wp_safe_redirect( get_permalink( $parent_id ), 301 );
exit;
}
}
} );Здесь важно не редиректить всё подряд на главную. Если у вложения есть родитель, логичнее вести пользователя и поисковик на него. Если родителя нет, решение нужно принимать отдельно: либо оставить страницу закрытой, либо настроить другой сценарий.
Как закрыть внутренний поиск WordPress
Страницы поиска почти всегда имеют слабую ценность для индексации. Если у вас нет осознанной задачи продвигать внутренний поиск, закрывайте их от индексации и не включайте в sitemap.
Для кода достаточно того же фильтра wp_robots, но можно добавить и явную метку для шаблонов, если тема выводит собственные meta-теги:
add_action( 'wp_head', function() {
if ( is_search() ) {
echo '<meta name="robots" content="noindex, nofollow">' . "\n";
}
}, 1 );Используйте либо этот вариант, либо фильтр wp_robots, а не оба сразу без необходимости. Дублировать одну и ту же директиву в head не полезно, хотя обычно это и не ломает сайт.
Проверка результата после внедрения
После правок не ограничивайтесь просмотром исходного кода. Нужно проверить, как страница отдается реально и не осталась ли она в карте сайта.
- Откройте страницу архива, поиска или автора в браузере и посмотрите исходный код на наличие
noindex. - Проверьте, что служебные URL не попали в XML sitemap.
- В Search Console отправьте страницу на повторную проверку, если она уже была в индексе.
- Убедитесь, что редирект с вложений работает только там, где есть родитель.
- Проверьте, не блокирует ли
robots.txtдоступ к странице раньше, чем поисковик увидитnoindex.
Последний пункт важен: если вы полностью закрыли URL в robots.txt, поисковик может не увидеть мета-robots на странице. В таких случаях удаление из индекса идёт медленнее и менее предсказуемо.
Частые ошибки и как их исправить
Закрыли URL в robots.txt и ждёте быстрого удаления
Это распространённая ошибка. Если страница уже в индексе, одного запрета в robots.txt может быть недостаточно. Сначала дайте поисковику увидеть noindex, а уже потом при необходимости ограничивайте обход.
Ставите noindex на всё подряд
Иногда вместе с архивами закрывают и полезные страницы таксономий, которые реально приводят трафик. Перед изменениями проверьте, какие архивы участвуют в навигации и какие страницы уже ранжируются.
Делаете редирект всех вложений на главную
Это ухудшает поведение сайта и создаёт бессмысленные переходы. Если у вложения есть родитель, редирект должен вести туда. Если нет — лучше сначала решить, нужен ли такой URL вообще.
Не проверяете sitemap после настроек
Даже если страница получила noindex, она может продолжать попадать в sitemap из-за настроек плагина или темы. В этом случае поисковик будет регулярно её обходить, а вы будете видеть лишний шум в отчётах.
Практические советы по безопасности и производительности
Если вы вносите код вручную, не правьте файлы темы напрямую на рабочем сайте. Используйте дочернюю тему или мини-плагин. Так обновление шаблона не затрёт изменения.
Перед внедрением полезно сделать резервную копию файлов и базы. Для точечных правок достаточно сохранить текущую версию functions.php или вынести код в отдельный плагин с одной задачей. Это проще откатывать и легче тестировать.
Если на сайте много дублей и служебных URL, иногда выгоднее сначала навести порядок в SEO-настройках, а уже потом править шаблоны. В таких сценариях помогает не только закрытие индексации, но и чистка дублей, архивов и лишних мета-данных. Здесь уместны инструменты вроде Clearfy Pro, если вам нужен набор типовых SEO- и технических настроек в одном месте.
Когда не стоит закрывать архивы
Не отключайте индексацию архивов авторов и дат автоматически, если:
- на сайте несколько авторов и у каждого есть сильная авторская страница;
- архив дат используется как навигация по новостям или событиям;
- страницы архивов уже получают переходы из поиска;
- архивы содержат уникальные описания, а не просто список записей.
В таких случаях лучше доработать шаблон архива: добавить текст, убрать пустые блоки, настроить хлебные крошки и проверить, не создаёт ли тема лишние дубли title.
Если задача именно техническая — убрать из индекса служебные страницы, — начинайте с диагностики, затем применяйте точечный noindex, а после этого обязательно проверяйте sitemap и Search Console. Это надёжнее, чем пытаться «починить SEO» одним переключателем в админке.