В некоторых случаях на сайте на WordPress возникает необходимость запретить индексирование определённых страниц или разделов поисковыми роботами. Это может быть полезно, например, для страниц с личными кабинетами, тестовыми материалами, черновиками или страницами, которые могут вызвать дублирование контента в выдаче. В этой статье мы подробно разберём, как правильно запретить индексацию страниц WordPress, используя как стандартные средства, так и кастомные решения с помощью кода.
Почему важно контролировать индексацию страниц WordPress
Поисковые системы сканируют сайты для формирования выдачи. Если на вашем сайте много ненужных для индексации страниц, это может негативно повлиять на SEO — снизится качество индексации, появятся дубли, возможны проблемы с ранжированием. Правильное управление индексацией помогает:
- Избежать дублированного контента;
- Сохранить бюджет краулинга;
- Защитить приватные или служебные разделы;
- Повысить релевантность страниц в поиске.
Для WordPress есть несколько способов реализации запрета индексации, о них поговорим далее.
Использование robots.txt для ограничения индексации
Файл robots.txt — это первый инструмент, который приходит в голову. Он указывает роботам, какие пути не следует сканировать. Пример запрета доступа к папке с личным кабинетом:
User-agent: *
Disallow: /private/
Однако важно понимать, что robots.txt запрещает только сканирование, но не гарантирует, что страницы не попадут в индекс, если на них есть внешние ссылки или они указаны в sitemap. Поэтому для полного запрета индексации нужно использовать метатеги.
Добавление метатега noindex для страниц WordPress
Метатег noindex в разделе <head> страницы сообщает поисковикам, что эту страницу не нужно индексировать. В WordPress можно добавить этот тег несколькими способами.
1. Через плагины SEO
Популярные SEO-плагины, такие как Clearfy Pro или Yoast SEO, предоставляют удобный интерфейс для установки noindex на нужные типы записей или отдельные страницы.
Например, в Yoast SEO в разделе «Расширенные настройки» каждой записи можно поставить галочку «Не индексировать эту страницу».
2. Ручное добавление метатега через код
Если вы хотите гибко контролировать индексацию программно, добавьте следующий код в файл functions.php вашей темы или в отдельный плагин:
function wpconfig_noindex_for_private_pages() {
if (is_page('private') || is_page(array('test-page', 'draft-page'))) {
echo '<meta name="robots" content="noindex, nofollow">\n';
}
}
add_action('wp_head', 'wpconfig_noindex_for_private_pages');
В этом примере метатег noindex, nofollow будет добавлен на страницы с алиасами private, test-page и draft-page.
Запрет индексации для авторизованных пользователей
Иногда нужно запретить индексацию всех страниц для залогиненных пользователей, например, личного кабинета или профиля.
function wpconfig_noindex_for_logged_in_users() {
if (is_user_logged_in()) {
echo '<meta name="robots" content="noindex, nofollow">\n';
}
}
add_action('wp_head', 'wpconfig_noindex_for_logged_in_users');
Такой подход гарантирует, что страницы, доступные только после входа, не попадут в индекс поисковиков.
Использование HTTP-заголовков для управления индексацией
Кроме метатегов, можно управлять индексацией через HTTP-заголовок X-Robots-Tag. Это полезно для файлов, таких как PDF или других ресурсов, не поддерживающих HTML-теги.
В WordPress можно добавить такой заголовок программно:
function wpconfig_add_x_robots_tag() {
if (is_page('private')) {
header('X-Robots-Tag: noindex, nofollow', true);
}
}
add_action('send_headers', 'wpconfig_add_x_robots_tag');
Это даст дополнительный уровень контроля над индексацией.
Плагины для управления индексацией страниц в WordPress
Если не хотите писать код, существуют плагины с расширенными возможностями:
- Clearfy Pro — облегчает настройку SEO, в том числе управление
noindexдля различных типов страниц. Подробнее на wpshop.ru. - Yoast SEO — позволяет отключать индексацию для отдельных страниц и категорий.
- Robots Meta — простой плагин для управления метатегами robots.
Проверка корректности запрета индексации
После настройки важно проверить, что поисковые роботы действительно не индексируют выбранные страницы:
- Используйте Google Search Console — раздел «Проверка URL» покажет, проиндексирована ли страница.
- Проверьте исходный код страницы — должен быть метатег
noindex. - Проверьте ответ сервера и заголовки HTTP, например, через инструменты разработчика браузера или curl.
Советы по грамотному управлению индексацией в WordPress
Чтобы избежать ошибок и сохранить SEO-потенциал сайта, учитывайте следующие рекомендации:
- Не запрещайте индексацию важных страниц по ошибке — внимательно проверяйте условия в коде или настройки плагинов.
- Используйте
noindexвместоrobots.txt, если хотите полностью исключить страницу из индекса. - Регулярно проверяйте отчёты в Google Search Console для выявления проблем.
- Для массового управления используйте SEO-плагины с поддержкой
noindex. - Если вы используете кеширование, убедитесь, что метатеги динамически добавляются корректно.