Если нужно закрыть от поисковиков не весь сайт, а только конкретные страницы, в WordPress это делается точечно: через SEO-плагин, через мета-тег в шаблоне или через HTTP-заголовок. На практике чаще всего достаточно первого варианта, потому что он не требует правки темы и позволяет управлять индексацией прямо из админки.
Сразу уточню важный момент: noindex говорит поисковику не показывать страницу в выдаче, а nofollow — не передавать по ссылкам с этой страницы сигналы роботам. Это разные директивы, и их не всегда нужно ставить вместе. Для многих служебных страниц достаточно только noindex.
Когда имеет смысл закрывать отдельную страницу
Точечное управление индексацией обычно нужно для страниц, которые не должны конкурировать в поиске с основным контентом сайта или вообще не несут ценности для посетителя из поиска. Типичные случаи:
- дубли и почти дубли страниц;
- служебные разделы: поиск по сайту, результаты фильтров, внутренние страницы авторизации;
- страницы с очень слабым или временным содержимым;
- технические страницы, которые нужны пользователю, но не должны попадать в поиск;
- лендинги или тестовые страницы, которые ещё не готовы к индексации.
Если страница уже проиндексирована, добавление noindex не удаляет её мгновенно. Поисковику нужно заново обойти страницу и увидеть новую директиву. Поэтому после настройки важно проверить, что тег действительно появился в коде страницы.
Самый простой способ: SEO-плагин
Для большинства сайтов это лучший вариант. Почти любой нормальный SEO-плагин для WordPress умеет задавать noindex и иногда nofollow отдельно для записи, страницы, рубрики или произвольного типа контента. Логика у всех похожая: вы открываете нужную страницу в редакторе и меняете настройки индексации в метабоксе плагина.
Порядок действий обычно такой:
- Откройте нужную страницу в редакторе WordPress.
- Найдите блок настроек SEO-плагина внизу или в боковой панели.
- Включите запрет на индексацию, если нужен только
noindex. - Если нужно ещё и запретить переход роботов по ссылкам со страницы, включите
nofollow. - Сохраните страницу и проверьте исходный код.
Названия пунктов в интерфейсе зависят от плагина. Где-то это будет переключатель Index / Noindex, где-то отдельные поля для meta robots. Суть одна: плагин должен вывести в <head> страницы мета-тег вида <meta name="robots" content="noindex, nofollow"> или его вариацию.
Если вы используете SEO-плагин, не ставьте одновременно конфликтующие настройки в нескольких местах. Например, если страница закрыта в плагине, а в шаблоне темы вручную добавлен другой robots-тег, итоговый код может получиться неоднозначным. Поисковики обычно ориентируются на наиболее строгую директиву, но лучше не создавать лишнюю путаницу.
Как добавить noindex и nofollow вручную в шаблон страницы
Этот способ нужен, если вы не хотите ставить SEO-плагин или вам нужно закрыть от индексации страницу по условию в коде. Здесь уже придётся править тему или дочернюю тему. Если тема обновляется, правки в родительской теме потеряются, поэтому безопаснее использовать дочернюю тему.
Для отдельной страницы можно вывести мета-тег robots через хук wp_head, проверяя ID страницы. Пример ниже закрывает конкретную страницу с ID 123:
add_action( 'wp_head', function () {
if ( is_page( 123 ) ) {
echo '<meta name="robots" content="noindex, nofollow">' . "\n";
}
} );Этот код можно добавить в functions.php дочерней темы или в собственный мини-плагин. Если нужен только запрет индексации без запрета перехода по ссылкам, замените значение на noindex, follow.
Есть два практических нюанса:
- код должен выводиться только на нужной странице, иначе вы случайно закроете от индексации больше, чем планировали;
- если на сайте уже работает SEO-плагин, проверьте, не создаёт ли он второй robots-тег.
Для страниц с произвольным шаблоном можно ориентироваться не только на ID, но и на шаблон страницы, slug или другие условия WordPress. Но чем точнее условие, тем меньше риск задеть лишние URL.
Когда удобнее использовать HTTP-заголовок X-Robots-Tag
Иногда мета-тега в HTML недостаточно или неудобно править шаблон. Тогда используют заголовок X-Robots-Tag. Он полезен, когда нужно закрыть не только HTML-страницу, но и файл или ответ сервера, который не имеет нормального <head>.
Для обычной страницы WordPress этот способ встречается реже, потому что его сложнее настроить без доступа к серверу. Но если у вас есть доступ к конфигурации веб-сервера или к настройкам хостинга, это рабочий вариант. Важно понимать: правила для Apache, Nginx и панели хостинга отличаются, а на некоторых тарифах такой доступ может быть ограничен.
Если вы не уверены, что именно поддерживает ваш хостинг, не начинайте с этого способа. Для отдельной страницы в WordPress почти всегда проще и безопаснее использовать SEO-плагин или мета-тег в теме.
Что выбрать: noindex, nofollow или оба сразу
Для точечной настройки полезно разделять эти директивы по смыслу. Ниже — коротко о том, как обычно поступают на практике.
| Ситуация | Что ставить | Почему |
|---|---|---|
| Страница нужна пользователю, но не должна быть в поиске | noindex, follow | Поисковик не показывает страницу в выдаче, но может переходить по ссылкам дальше |
| Страница служебная, и ссылки с неё не должны учитываться | noindex, nofollow | Подходит для технических и временных страниц |
| Нужно убрать дубли из поиска, но не ломать внутреннюю перелинковку | noindex, follow | Чаще всего это более безопасный вариант |
Если сомневаетесь, не ставьте nofollow автоматически. Для обычных страниц сайта это часто лишнее ограничение. nofollow имеет смысл там, где вы сознательно не хотите передавать сигналы по ссылкам с этой страницы.
Как проверить, что настройка сработала
После сохранения страницы откройте её в браузере и посмотрите исходный код. В коде должен быть мета-тег robots с нужным значением. Проще всего использовать просмотр исходника страницы или инструменты разработчика в браузере.
Проверьте три вещи:
- тег действительно присутствует на нужной странице;
- значение соответствует задаче:
noindexилиnoindex, nofollow; - на странице нет второго robots-тега, который может конфликтовать с первым.
Если вы используете SEO-плагин, иногда настройки кэшируются. Тогда после изменения директивы очистите кэш сайта, кэш плагина и, если он есть, серверный кэш. Иначе вы можете смотреть старую версию HTML и решить, что настройка не работает.
Для уже проиндексированной страницы полезно проверить её в панели вебмастера поисковой системы. Там видно, как робот видит страницу и распознал ли он директиву noindex. Но даже без панели можно убедиться, что в HTML всё выставлено правильно.
Типичные ошибки, из-за которых страница всё равно попадает в поиск
Чаще всего проблема не в WordPress, а в том, что директива настроена не там или не тем способом. Вот что встречается на практике:
- страницу закрыли в настройках SEO-плагина, но забыли очистить кэш;
- мета-тег добавили в шаблон, но он не выводится на нужном типе страниц;
- в коде остался второй robots-тег от темы или другого плагина;
- страница закрыта только визуально, но ссылка на неё по-прежнему есть в карте сайта;
- пользователь путает
noindexс удалением страницы и ждёт мгновенного исчезновения из выдачи.
Последний пункт особенно важен: noindex не удаляет URL из индекса сразу. Если нужна именно быстрая деиндексация, обычно дополнительно проверяют статус страницы, наличие редиректа или корректность ответа сервера. Но это уже отдельная задача, не подмена настройки robots.
Если вам нужно регулярно управлять дублями, служебными страницами и индексацией без ручной правки шаблонов, удобнее использовать SEO-плагин с настройками robots на уровне конкретной страницы. В экосистеме WordPress для таких задач часто берут решения класса Clearfy Pro, если нужен именно контроль дублей и служебных страниц без лишней возни с кодом.
В итоге логика простая: для единичной страницы проще всего задать noindex или noindex, nofollow в SEO-плагине; если плагина нет или нужен жёстко контролируемый сценарий, добавьте мета-тег через wp_head; если у вас есть серверный доступ и особый случай, можно использовать X-Robots-Tag. Для большинства сайтов хватает первого варианта, и именно он меньше всего ломает остальную структуру WordPress.