Периодически перед веб-мастерами встает вопрос, как в WordPress исключить страницы из поиска. Это нужно для того, чтобы поисковые машины не индексировали технические страницы, персональные данные – информацию, которая не должна находиться в свободном доступе по разным причинам.
Индексация страниц и поисковая выдача
Как правило, процесс индексации Гугла означает, что бесчисленные армии ботов поисковика заходят на страницы сайта, исследуют их и если находят новые, то копируют и добавляют себе в базу данных.
Чтобы нежелательные для всеобщего обозрения материалы с сайтов не оказались в открытом доступе, сканирующим роботам следует дать установку, что индексировать, а что нет. После чего любой пользователь по ключевым словам сможет найти ссылки с искомой информацией.
Благодаря грамотной оптимизации и правильно подобранным ключевикам, сайты могут претендовать на высокие ранги поисковой выдачи. Значит на сайт будут приходить новые пользователи, которые могут стать вашими подписчиками или покупателями, в зависимости от того, на чем вы зарабатываете.
Кстати, если у вашего сайта индексируются не все страницы, прочитайте статью о том, как избавиться от этой проблемы. Ранее мы разбирали этот вопрос.
Почему так важно ограничить индексацию страниц?
На каждом сайте присутствуют материалы или целые категории, которые небходимо исключить из поиска. К примеру данные, указывающие на версию ядра Вордпресс, плагинов и тем. Благодаря этой информации злоумышленникам будет легче найти уязвимости системы безопасности. О том, как улучшить защиту сайта и как удалить версию скрипта в wordpress мы говорили подробней в предыдущих статьях. В отсутствие аутентификации и кодов доступа приватные материалы рискуют стать достоянием общественности. Но если поисковым роботам не дать четкое направление, то они будут сканировать на вашем сайте все подряд, без разбора.
Около 20 лет назад злоумышленники использовали поисковик, чтобы найти информацию о банковских картах с сайтов. С помощью этой уязвимости хакеры похищали данные клиентов прямо с сайтов интернет-магазинов.
Такие казусы негативно скажутся на репутации бренда, что, как минимум, повлечет за собой отток клиентуры и соответственно экономические потери. Поэтому сотрудникам, отвечающим за безопасность интернет-магазинов или корпоративных ресурсов первым делом следует в wordpress исключить страницы поиска, то есть не допустить их индексации.
Как в WordPress исключить страницы из поиска
Исключить с помощью robots.txt
“Robots.txt” является файлом, указывающий поисковым ботам на контент, который нужно проиндексировать. В документе также можно запретить автоматике проникать и копировать определенные данные. В зависимости от того, какое кодовое значение вы внесете в файл. После того как вы закончите редактировать, документ надо будет разместить в корневой папке на хостинге. Как это сделать, рассмотрим ниже.
Какой код вставить в файл?
Перед вами перечень кодов, которые вы можете вставить в файл robots.txt. Их можно вставлять по отдельности или целыми блоками. В зависимости от того, что вы хотите индексировать в дальнейшем, а что скрыть. Сразу после списка вы сможете узнать, какой код к чему относится и что обозначает. Ознакомьтесь с ним ниже.
User-agent: *
Disallow: /cgi-bin # классика...
Disallow: /? # все параметры запроса на главной
Disallow: /wp- # все файлы WP: /wp-json/, /wp-includes, /wp-content/plugins
Disallow: *?s= # поиск
Disallow: *&s= # поиск
Disallow: /search # поиск
Disallow: /author/ # архив автора
Disallow: *?attachment_id= # страница вложения. Вообще-то на ней редирект...
Disallow: */feed # все фиды
Disallow: */rss # rss фид
Disallow: */embed # все встраивания
Disallow: */page/ # все виды пагинации
Allow: */uploads # открываем uploads
Allow: /*/*.js # внутри /wp- (/*/ - для приоритета)
Allow: /*/*.css # внутри /wp- (/*/ - для приоритета)
Allow: /wp-*.png # картинки в плагинах, cache папке и т.д.
Allow: /wp-*.jpg # картинки в плагинах, cache папке и т.д.
Allow: /wp-*.jpeg # картинки в плагинах, cache папке и т.д.
Allow: /wp-*.gif # картинки в плагинах, cache папке и т.д.
Allow: /wp-*.svg # картинки в плагинах, cache папке и т.д.
Allow: /wp-*.pdf # файлы в плагинах, cache папке и т.д.
#Disallow: /wp/ # когда WP установлен в подкаталог wp
Sitemap: http://site.ru/sitemap.xml
Sitemap: http://site.ru/sitemap2.xml # еще один файл
#Sitemap: http://site.ru/sitemap.xml.gz # сжатая версия (.gz)
Host: site.ru # для Яндекса и Mail.RU. (межсекционная)
# Версия кода: 1.0
# Не забудьте поменять `site.ru` на ваш сайт.
Подробнее о коде:
В строке User-agent: * вы можете разрешить какой-либо поисковой системе индексировать страницы вашего сайта. Звездочка в конце означает, что любой бот из любого поисковика может проверять сайт. Но в случае если вы хотите ограничиться одним или несколькими системами то их следует указать. Для Гугла и Яндекса например:
User-agent: Yandex, User-agent: Googlebot
Allow: */uploads, данной командой мы даем согласие на индексацию страниц, где в URL есть слово/uploads. Очень важно это указать, ведь далее мы закрываем от индексации страницы, которые начинаются с /wp-, а /wp- является составляющей /wp-content/uploads. Таким образом, чтобы изменить правило “Disallow” wp- необходима строка Allow: */uploads.
Иные строки ограничивают переход ботов по URL. Они начинаются с кодов:
Disallow: /cgi-bin - закрывает каталог скриптов на сервере Disallow: /feed - закрывает RSS фид блога Disallow: /trackback - закрывает уведомления Disallow: ?s= или Disallow: *?s= - закрыавет страницы поиска Disallow: */page/ - закрывает все виды пагинации
Правило Sitemap: http://site.ru/sitemap.xml сообщает боту где находится файл с картой сайта в XML, если о его создании вы позаботились заранее. Нет? Тогда создайте, затем укажите роботу полный путь к документу, который может быть и не один. Если так, то путь прописываем к каждому индивидуально.
В директиве Host: site.ru мы сообщаем поисковику, какой домен следует считать главным зеркалом сайта. Это необходимо выполнить если у ресурса есть копии на других доменах, тогда Yandex будет индексировать их равнозначно. Почему в данном контексте мы говорим именно об этой поисковой системе? Дело в том, что Host: понимает только Yandex, но не Google. Это важно!
А если вы добавили для сайта безопасный протокол https, то не забудьте его прописать в URL сайта. Например Host: https://sitename.com
Ввиду того, что данная директива работает в разных частях robots.txt, то лучше ее ввести в самом начале или наоборот – внизу файла, сделав отступ размером в одну строку.
Не забудьте упорядочить правила перед обработкой. Это важно!
Поисковики связываются с директивами Allow и Disallow, начиная не с первого и заканчивая последним, а в ином порядке – от короткого к длинному. Точка ставится после обработки крайнего правила:
User-agent: *
Allow: */uploads
Disallow: /wp-
То есть система считает данный код так:
User-agent: *
Disallow: /wp-
Allow: */uploads
Например, если бот исследует URL, заданные в формате: /wp-content/uploads/file.jpg, то правило Disallow: /wp- сообщит машине, что проверка не требуется, а Allow: */uploads сделает доступной для сканирования страницу по указанному вами адресу. Чтобы не перепутать и правильно отсортировать коды существует хороший совет: чем больше символов в конкретном правиле файла robots.txt, тем раньше оно будет обработано. Если же их количество не отличается друг от друга, то приоритет окажется у директив Allow.
С помощью WordPress плагина
Мы хотим вам рассказать о плагине, который может упростить вам задачу по работе с файлом robots.txt. Вам не нужно будет создавать его и самостоятельно размещать в корневой папке. Плагин оптимизации Clearfy готов сделать это за вас. Достаточно лишь подобрать необходимые директивы и создать правила. Скачайте и установите плагин, после чего в админке сайта перейдите в настройки приложения. Вот путь:
«Настройки» => «Clearfy меню» => «SEO»
Затем найдите строку «Создайте правильный robots.txt» и активируйте функцию, нажав кнопку ВКЛ.
После активации, ниже появится дополнительное поле, где вы сможете добавить правила для файла robots.txt. Туда нужно вставить код, который необходим, чтобы страницы сайта индексировались правильно.
Благодаря плагину вам не придется закачивать на хостинг файл robots.txt и скачивать обратно, чтобы внести правки.