Если на сайте внезапно появились noindex, nofollow или другие лишние SEO-мета-теги, сначала нужно понять, кто именно их добавляет. В WordPress такие метки чаще всего приходят из SEO-плагина, темы, настроек приватности или старого кода после переноса сайта. Удалять их вслепую не стоит: можно убрать не только лишнее, но и нужное, например мета-robots для отдельных страниц.
Ниже — практичный порядок действий: как проверить, какие теги реально стоят в HTML страницы, найти источник и убрать их без лишних экспериментов.
Сначала проверьте, какие мета-теги действительно отдаются страницей
Не ориентируйтесь только на настройки в админке. Иногда плагин уже отключён, а тег всё ещё остаётся в кэше, в теме или в подключённом сниппете кода. Надёжнее посмотреть исходный HTML страницы.
Откройте нужную страницу сайта в браузере, затем:
- нажмите
Ctrl+Uили выберите просмотр исходного кода; - найдите в коде
robots; - посмотрите, есть ли строка вроде
<meta name="robots" content="noindex, nofollow">или похожая комбинация; - проверьте, не дублируется ли тег несколько раз.
Если у вас есть доступ к серверу или консоли, можно быстро проверить заголовок и HTML через curl. Это полезно, когда страница открывается через кэш или когда браузер показывает неактуальную версию.
curl -L https://example.com/page/ | grep -i robotsЕсли в ответе виден meta name="robots", значит тег действительно отдается страницей. Если в HTML его нет, а проблема всё равно кажется реальной, проверьте кэш браузера, плагина кэширования, CDN и серверный кэш.
Откуда в WordPress берутся noindex и nofollow
В WordPress такие мета-теги обычно добавляются не самой системой, а одним из источников ниже.
| Источник | Что искать | Что делать |
|---|---|---|
| SEO-плагин | Настройки индексации, robots meta, noindex для архивов, таксономий, вложений | Проверить глобальные настройки и правила для конкретного типа страниц |
| Тема | Встроенный вывод meta robots в header.php или через хуки | Найти код и убрать его из темы или дочерней темы |
| Плагин безопасности или оптимизации | Автоматические ограничения для служебных страниц | Отключить только нужную опцию, не весь плагин |
| Старый код после переноса | Фрагменты в functions.php, MU-плагинах, сниппетах | Удалить устаревший фрагмент или перенести логику в актуальное место |
| Кэш | Старая версия HTML после изменений | Очистить все уровни кэша |
На практике чаще всего проблема возникает после переноса сайта с другого хостинга или после установки SEO-плагина, который автоматически проставил noindex для части страниц. Иногда владелец сайта просто не замечает, что в старой теме уже был свой вывод robots-мета.
Если тег добавляет SEO-плагин, уберите его в настройках
Это самый безопасный сценарий. Сначала проверьте, не управляет ли тегами один из SEO-плагинов. В популярных плагинах обычно есть отдельные настройки для:
- главной страницы;
- записей и страниц;
- рубрик и меток;
- архивов автора и даты;
- страниц вложений;
- страниц поиска и 404.
Ищите параметры, связанные с robots meta, noindex, nofollow, index, follow. Если нужная страница не должна закрываться от индексации, переключите её на index, follow или отключите автоматическую установку noindex для этого типа страниц.
После изменения настроек обязательно очистите кэш плагина, сервера и CDN, если он есть. Иначе вы увидите старый HTML и решите, что ничего не изменилось.
Если мета-тег вставлен в тему или код сайта, удалите источник вручную
Когда SEO-плагин ни при чём, ищите код в теме. Обычно это файл functions.php, header.php или подключённый сниппет в плагине для вставки кода. Ищите строки с wp_robots, robots, noindex, nofollow, а также фильтры и действия, которые меняют robots-мета.
Если вы нашли собственный код, сначала сохраните его копию. Удаляйте только тот фрагмент, который отвечает за лишний тег. Не трогайте весь файл целиком, если в нём есть и другая логика.
Пример типичной ситуации: в теме вручную добавили мета robots через хук. Если такой код больше не нужен, его нужно убрать из дочерней темы или из собственного плагина, а не править ядро WordPress.
remove_action( 'wp_head', 'имя_функции_или_колбэка' );Этот пример показывает принцип: сначала нужно понять, какой именно callback добавляет тег, а затем снять его тем же способом. Универсальной строки для всех сайтов нет, потому что код у каждого проекта свой.
Как убрать лишние robots-метки через фильтры WordPress
Начиная с современных версий WordPress, вывод robots-мета можно менять через фильтр wp_robots. Это полезно, если тег формируется не плагином, а вашим кодом, и вы хотите точечно убрать только noindex или nofollow.
Ниже пример для дочерней темы или собственного мини-плагина. Он убирает noindex и nofollow из массива правил, если они были добавлены ранее.
add_filter( 'wp_robots', function( $robots ) {
unset( $robots['noindex'] );
unset( $robots['nofollow'] );
return $robots;
} );Этот способ подходит только тогда, когда WordPress действительно формирует robots-мета через фильтр. Если тег вставлен жестко в шаблон через обычный HTML, фильтр его не уберёт — там нужно править сам шаблон или код, который выводит строку.
Если вы не уверены, где именно находится источник, не начинайте с фильтра. Сначала найдите место, откуда тег приходит, иначе можно получить конфликт: один код убирает noindex, а другой тут же добавляет его обратно.
Что делать с noindex и nofollow после переноса сайта
После миграции часто остаются следы старой настройки: на новом сайте уже другой SEO-плагин, а в базе или в теме продолжает жить старый код. В такой ситуации полезно проверить сразу несколько мест:
- активные плагины и их SEO-настройки;
functions.phpдочерней темы;- MU-плагины в
wp-content/mu-plugins; - сниппеты в плагинах для вставки PHP-кода;
- кэш страниц и объектный кэш, если он используется.
Если сайт переносили с другого движка или старой версии WordPress, отдельно проверьте, не остались ли в шаблоне статические мета-теги. Иногда они лежат в header.php вместе с другими SEO-метками и не зависят от настроек админки.
Если у вас несколько сред — например, staging и production, — убедитесь, что правите именно боевой сайт. Бывает, что noindex убрали на тестовой копии, а на основном домене тег остался.
Как проверить, что лишние мета-теги действительно удалены
После правок откройте страницу ещё раз и проверьте исходный код. В идеале в HTML должен остаться только тот robots-мета, который вы действительно хотите видеть. Если страница должна индексироваться, обычно это означает отсутствие noindex и nofollow в robots-мета либо явное разрешающее значение, если оно используется вашим плагином.
Проверяйте не только главную страницу, но и те типы страниц, где проблема проявлялась раньше:
- отдельные записи;
- страницы;
- рубрики и метки;
- страницы поиска;
- архивы автора;
- страницы вложений.
Если тег исчез в исходном коде, но поисковик ещё показывает старую версию, это не всегда ошибка. Поисковые системы обновляют данные не мгновенно. Сначала убедитесь, что на сайте всё исправлено, а затем дождитесь переобхода или отправьте страницу на повторную проверку в инструментах для вебмастеров.
Когда не стоит удалять noindex и nofollow
Не все такие метки лишние. На служебных страницах noindex может быть нормальным и даже полезным. Например, его часто оставляют для страниц поиска по сайту, некоторых архивов, страниц авторизации или технических разделов. Если убрать всё подряд, можно случайно открыть для индексации мусорные URL и получить лишние дубли.
Поэтому правильный подход такой: сначала определить, какая именно страница закрыта, затем решить, должна ли она индексироваться. Удалять нужно только ошибочно выставленные метки, а не любую защиту от индексации без разбора.
Если вам нужен аккуратный способ чистить WordPress от лишних SEO-дублей и служебных меток, удобнее делать это через один SEO-плагин с понятными настройками, чем собирать разрозненные правки в теме и сниппетах. Например, в Clearfy Pro есть инструменты для удаления лишних SEO-элементов и чистки типовых дублей, если задача именно в упорядочивании таких настроек: https://wpshop.ru/plugins/clearfy.
Если коротко: сначала найдите источник мета-тега, потом уберите его в настройках плагина или в коде, после этого очистите кэш и перепроверьте исходный HTML. В WordPress это самый надёжный способ избавиться от лишних noindex, nofollow и других SEO-меток без побочных эффектов.