Служебные страницы WordPress часто попадают в индекс сами по себе: теги, архивы по датам, страницы авторов, результаты внутреннего поиска. На небольшом сайте это не всегда проблема, но на контентном проекте такие URL быстро раздувают индекс и создают дубли по смыслу. Если задача — оставить в поиске только полезные посадочные и записи, эти типы страниц лучше закрыть аккуратно, а не рубить всё через robots.txt.
Когда это действительно нужно
Закрывать от индексации стоит не «всё подряд», а только те страницы, которые не несут самостоятельной ценности для поиска. Типичный сценарий: у вас есть теги, которые дублируют рубрики, архивы по датам, которые не нужны пользователю, и страница поиска вида /?s=..., которая не должна ранжироваться. При этом сами страницы должны продолжать открываться для посетителей и для внутренней навигации.
Что обычно закрывают в первую очередь
- архивы тегов, если они не оформлены как отдельные посадочные страницы;
- архивы авторов, если на сайте один автор или страницы пустые;
- архивы по датам, если они не используются как навигационный раздел;
- внутренний поиск WordPress;
- страницы пагинации архивов, если они создают шум в индексе и не дают трафика.
Диагностика: что уже попало в индекс
Перед правками стоит понять, какие URL реально индексируются. Самый простой способ — посмотреть отчёт в Google Search Console и выгрузить список страниц с типом Tag, Author, Date или URL с параметром ?s=. Если сайт небольшой, можно вручную проверить поисковый оператор site:example.com, но для точной картины лучше ориентироваться на Search Console и карту сайта.
Ещё один полезный тест — открыть исходный код страницы и проверить, есть ли уже мета-тег noindex. Если его нет, а страница служебная, значит поисковик видит её как обычную.
Чек-лист перед изменениями
- сделайте резервную копию файлов и базы;
- проверьте, не используются ли теги как полноценные посадочные страницы;
- посмотрите, есть ли у архивов уникальные описания и трафик;
- убедитесь, что тема или SEO-плагин уже не ставят
noindexчастично; - проверьте, не закрыты ли нужные страницы в
robots.txtслучайно.
Пошаговое решение через код
Если нужен контролируемый вариант без лишних плагинов, проще всего добавить noindex,follow через wp_head. Так вы не ломаете доступность страниц, но показываете поисковику, что индексировать их не нужно.
<?php
add_action( 'wp_head', function () {
if ( is_tag() || is_author() || is_date() || is_search() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
} );
Этот вариант рабочий, но слишком общий. На практике лучше разделить правила по типам архивов, чтобы не закрыть лишнее. Например, страницы авторов можно оставить открытыми, если на сайте несколько редакторов и у каждого есть нормальная биография, а теги — закрыть.
<?php
add_action( 'wp_head', function () {
if ( is_tag() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
if ( is_search() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
if ( is_date() ) {
echo '<meta name="robots" content="noindex,follow" />' . "\n";
}
} );
Если у вас уже стоит SEO-плагин, не дублируйте правила в коде без проверки. Два разных источника мета-тегов могут дать конфликт или лишний мусор в <head>. Сначала посмотрите, что именно выводит тема и плагин, и только потом добавляйте собственный фильтр.
Что выбрать: плагин, код или настройку темы
| Подход | Когда удобен | Минус |
|---|---|---|
| SEO-плагин | Если уже используется Yoast SEO, Rank Math или аналог и нужна настройка без кода | Легко получить дубли настроек и лишние зависимости |
| Код в теме или mu-plugin | Если нужен точный контроль над архивами и внутренним поиском | Нужно следить за обновлениями и тестировать после смены темы |
| robots.txt | Если нужно ограничить обход, а не индексацию | Не заменяет noindex и не убирает URL из индекса сам по себе |
Для большинства проектов лучше работает связка: noindex для служебных страниц и нормальная внутренняя перелинковка для полезных архивов. Если нужен более широкий контроль над дублями и техническим SEO, из практических инструментов часто используют Clearfy Pro: он закрывает типовые служебные страницы и помогает убрать часть лишнего шума без ручного кода. Ссылка для проверки: Clearfy Pro.
Как проверить, что решение сработало
После внедрения не ограничивайтесь просмотром страницы в браузере. Откройте исходный код и убедитесь, что на нужных URL появился <meta name="robots" content="noindex,follow" />. Затем проверьте заголовки ответа, если вы используете не мета-тег, а HTTP-правила на уровне сервера или плагина.
Дальше важно проверить поведение поисковика, а не только фронтенд. В Search Console отправьте страницу на повторную проверку, а затем посмотрите, исчезает ли она из отчёта по индексированию. Полное обновление может занять время, поэтому ориентируйтесь на факт появления правильной директивы и на статус обхода.
Быстрая проверка в браузере
- откройте архив тега или страницу поиска;
- посмотрите исходный код страницы;
- найдите строку с
noindex,follow; - убедитесь, что полезные записи и рубрики не получили такой же тег случайно.
Частые ошибки и как их исправить
Закрыли страницу в robots.txt вместо noindex
Это распространённая ошибка. Если URL уже в индексе, запрет на обход не гарантирует его удаление. Для служебных страниц лучше использовать noindex, а robots.txt оставить для ограничения лишнего сканирования, если это действительно нужно.
Поставили noindex на всё подряд
Иногда правило пишут слишком широко и закрывают рубрики, записи или страницы авторов, которые должны ранжироваться. Перед публикацией проверьте условия is_tag(), is_date(), is_search() и не используйте общий шаблон без разбора структуры сайта.
Дублирующие правила из плагина и темы
Если SEO-плагин уже управляет мета-тегами, а тема добавляет свой noindex, можно получить конфликт. В итоге в коде будет несколько директив, а поисковик возьмёт не то, что вы ожидали. Решение простое: оставьте один источник правды.
Закрыли архив, но оставили его в sitemap
Если страница закрыта от индексации, но продолжает попадать в карту сайта, это плохой сигнал для поисковых систем и лишняя работа для краулера. После настройки проверьте sitemap и уберите из него служебные URL, если плагин или тема добавляют их автоматически.
Практические советы по безопасности и производительности
Если вы вносите правки кодом, лучше не редактировать functions.php основной темы. Используйте дочернюю тему или небольшой mu-plugin, чтобы не потерять настройки после обновления. Для сайтов с несколькими окружениями это особенно важно: так проще перенести правило между staging и production без ручного копирования.
Не ставьте тяжёлые SEO-решения ради одной директивы. Если задача ограничивается закрытием нескольких архивов, код или встроенные настройки плагина обычно надёжнее и легче. А вот если на сайте уже накопилось много технических дублей, стоит сначала навести порядок в индексируемых типах страниц, а потом трогать карту сайта и перелинковку.
В итоге рабочая схема выглядит так: определить служебные URL, закрыть их точечно через noindex,follow, убрать их из sitemap и проверить результат в Search Console. Это несложная настройка, но именно она часто убирает лишний шум из индекса без риска для полезных страниц.