Ситуация типовая: сайт ещё в разработке, переехал на новый домен, попал в тестовый стенд или временно не должен светиться в поиске. В WordPress для этого есть штатная настройка, но на практике её часто включают неправильно: потом остаются уже проиндексированные страницы, кэш, sitemap и ссылки, которые продолжают уводить роботов на сайт. Ниже — как закрыть сайт от индексации без лишних побочных эффектов и как проверить, что всё действительно сработало.
Когда штатной галочки недостаточно
В админке WordPress есть опция discourage search engines from indexing this site — в русской локализации это обычно «Попросить поисковые системы не индексировать сайт». Она полезна, но не решает всё автоматически. Поисковик может:
- сохранить уже известные URL в выдаче до следующего обхода;
- увидеть страницы через внешние ссылки;
- получить sitemap, если он не закрыт отдельно;
- наткнуться на кэшированные копии и зеркала;
- проиндексировать файлы, которые вы случайно оставили открытыми.
Поэтому корректный сценарий — не только включить настройку в WordPress, но и проверить robots.txt, sitemap, мета-теги и HTTP-ответы на ключевых страницах.
Диагностика: что именно сейчас открыто для индексации
Перед изменениями посмотрите, как сайт отвечает поисковому роботу. Это можно сделать без специальных плагинов.
Проверка robots.txt
Откройте /robots.txt в браузере. Если там уже есть запрет на весь сайт, убедитесь, что он не конфликтует с настройками темы или SEO-плагина. Частая проблема — robots.txt генерируется плагином, а в нём остаются старые правила.
Проверка мета-тега robots
На главной и на нескольких внутренних страницах посмотрите исходный код. Ищите строку вроде <meta name="robots" content="noindex, nofollow"> или похожую комбинацию. Если её нет, а сайт должен быть закрыт, значит настройка не применяется на уровне темы или SEO-плагина.
Проверка HTTP-заголовков
Иногда сайт закрывают через заголовок X-Robots-Tag. Это удобно для файлов и отдельных типов страниц. Проверить можно командой:
curl -I https://example.com/В ответе ищите X-Robots-Tag: noindex или отсутствие индексации на уровне страницы. Если заголовка нет, а вы рассчитывали именно на него, значит правило не настроено на сервере или в плагине.
Пошаговое решение в WordPress
1. Включите штатный запрет индексации
Перейдите в Настройки → Чтение и включите опцию запрета индексации. Это базовый шаг, который WordPress умеет сам. После сохранения проверьте, что на фронтенде появился noindex или что SEO-плагин подхватил настройку.
2. Закройте сайт на уровне robots.txt, если он уже доступен в сети
Если сайт уже успел попасть в поиск или вы не хотите, чтобы роботы тратили краулинговый бюджет, добавьте аккуратные правила в robots.txt. Для полностью закрытого тестового сайта обычно используют такой вариант:
User-agent: *
Disallow: /Но здесь есть важная оговорка: robots.txt не удаляет уже известные URL из индекса. Он только запрещает обход. Если страницы уже в поиске, нужен ещё noindex на самих страницах или ответ X-Robots-Tag.
3. Уберите sitemap из публичного доступа, если сайт временный
Если XML-карта сайта доступна, поисковик может продолжать находить новые URL даже при закрытом фронтенде. В SEO-плагинах обычно есть отдельная настройка отключения sitemap. На временном стенде это разумно: меньше ложных обходов и меньше шансов, что тестовые URL попадут в индекс.
4. Проверьте, не переопределяет ли SEO-плагин поведение WordPress
Yoast SEO, Rank Math и похожие плагины могут управлять robots-мета-тегами и sitemap независимо от штатной настройки WordPress. Если у вас стоит SEO-плагин, не полагайтесь только на галочку в Настройки → Чтение. Проверьте настройки индексации в самом плагине и убедитесь, что он не выставляет index, follow на уровне шаблонов.
Если нужен код: принудительно закрыть сайт через functions.php или mu-plugin
Когда сайт должен быть закрыт независимо от темы и SEO-плагина, удобнее добавить небольшой фрагмент в mu-plugin или в functions.php дочерней темы. Это полезно на staging-сайтах, где нельзя доверять ручным настройкам.
<?php
add_action( 'wp_head', function () {
if ( ! is_user_logged_in() ) {
echo '<meta name="robots" content="noindex, nofollow, noarchive">' . "\n";
}
}, 1 );
add_filter( 'robots_txt', function ( $output, $public ) {
if ( ! is_user_logged_in() ) {
return "User-agent: *\nDisallow: /\n";
}
return $output;
}, 10, 2 );Этот вариант не идеален для боевого сайта, но для закрытого тестового стенда работает предсказуемо. Если используете его, не забудьте ограничить доступ к сайту ещё и на уровне сервера или basic auth — robots.txt не защищает от людей и не скрывает контент от прямого запроса.
Сравнение подходов
| Способ | Что делает | Когда подходит | Ограничение |
|---|---|---|---|
| Галочка в WordPress | Просит поисковики не индексировать сайт | Быстро закрыть новый сайт | Не удаляет уже известные URL |
| robots.txt | Запрещает обход | Тестовый сайт, экономия краулинга | Не гарантирует удаление из индекса |
| noindex / X-Robots-Tag | Сигнализирует не индексировать страницу | Нужно убрать конкретные URL из поиска | Нужно, чтобы робот смог страницу обойти |
Как проверить, что решение сработало
После настройки не ограничивайтесь визуальной проверкой. Сайт может выглядеть закрытым, но оставаться доступным для обхода.
- Откройте исходный код главной страницы и убедитесь, что есть
noindex. - Проверьте
/robots.txtи убедитесь, что там нет конфликтующих правил. - Выполните
curl -Iдля главной и нескольких внутренних страниц. - Если сайт уже был в поиске, проверьте статус URL в Google Search Console или Яндекс Вебмастере.
- Убедитесь, что sitemap либо отключён, либо не содержит публичных URL, если сайт должен быть полностью скрыт.
Если после изменений страницы продолжают появляться в выдаче, это не всегда ошибка настройки. Часто поисковику просто нужно время на повторный обход и переоценку сигналов.
Частые ошибки и как их исправить
Оставили открытым sitemap
Даже при закрытом фронтенде карта сайта может продолжать подсказывать поисковику новые URL. Решение: отключить sitemap в SEO-плагине или закрыть его отдельным правилом на время тестов.
Использовали только robots.txt
Это самая частая ошибка. Запрет обхода не равен запрету индексации. Если URL уже известен, он может остаться в выдаче без сниппета. Для удаления нужен noindex или заголовок X-Robots-Tag.
Плагин SEO перезаписал настройки WordPress
Если в теме или в SEO-плагине задано собственное поведение robots-мета-тегов, штатная галочка WordPress может не дать ожидаемого результата. Проверьте шаблоны индексации в плагине и отключите конфликтующие правила.
Закрыли сайт, но забыли про доступ для команды
Если вы ставите жёсткий запрет на индексацию и одновременно закрываете сайт basic auth, убедитесь, что у разработчиков и редакторов есть понятный способ входа. Иначе можно получить ситуацию, когда сайт закрыт для поисковиков, но неудобен для работы.
Безопасность и производительность: что сделать дополнительно
Если сайт временный или ещё не готов к публикации, лучше не ограничиваться SEO-сигналами. Для staging-среды практичнее:
- закрыть доступ по паролю на уровне сервера;
- отключить отправку почты и внешние интеграции;
- не подключать аналитические скрипты на тестовом домене;
- проверить, что кэш-плагин не раздаёт старые публичные копии;
- не оставлять в открытом доступе дампы базы, бэкапы и архивы.
Если вы хотите управлять технической чистотой сайта более системно, уместно посмотреть в сторону инструментов вроде Clearfy Pro: он помогает с частью SEO-настроек, чисткой лишних элементов и техническими правками без ручного разбрасывания по теме.
Что делать, если сайт уже попал в индекс
Если закрыть сайт нужно не профилактически, а после индексации, одной галочки мало. Сначала поставьте noindex на нужные страницы, затем проверьте, что они доступны для обхода, и только после этого просите поисковик переобойти URL через инструменты для вебмастеров. Не удаляйте страницы физически, пока не понимаете, как это повлияет на внутренние ссылки и редиректы.
Для временно закрытого WordPress-сайта рабочая схема обычно такая: штатная настройка в админке, проверка robots.txt, контроль sitemap, при необходимости — принудительный noindex через код и обязательная проверка заголовков. Если пройтись по этим шагам последовательно, сайт не будет случайно светиться в поиске из-за одной забытой настройки.