Работа с файлом robots.txt на WordPress-сайте

Работа с файлом robots.txt на WordPress-сайте

Необязательный в использовании файл, предназначенный для ограничения доступа поисковым роботам к содержимому сайта – это robots.txt. Появившийся более 20 лет назад, успел получить поддержку от большинства поисковых систем. Задает необходимые параметры индексации при помощи набора инструкций.

Основная информация и предназначение

Предоставляет поисковым системам путь для индексации важных элементов ресурса. Под этим подразумевается установка ограничений для директорий, страниц, а также указывается путь к зеркалу и карте сайта. Первым делом поисковая машина находит robots.txt (размещен в корневой папке) и после этого следует указанным директивам. При отсутствии этого файла – робот проводит полное сканирование сайта.

Отметим, что содержимое документа является рекомендацией, а не обязательной командой. Нет гарантий того, что скрытая страница не попадет в индекс.

Внимание! Все записи осуществляются латинскими символами. При использовании доменного имени на кириллице, стоит воспользоваться сервисом кодирования Punycode.

Работа с файлом robots.txt позволяет сократить время обработки ресурса. Будут индексироваться только необходимые страницы – это существенно снизит нагрузку на сервер.

Обязательному запрету подлежат:

Обязательному запрету подлежат

Основные директивы и спецсимволы

Основные директивы устанавливают правила и определяют, какой конкретно робот должен их выполнять.
  • User-agent – указывает кому адресованы инструкции;
  • Disallow – устанавливает запрет на индексацию указанной части ресурса;
  • Allow – разрешает доступ поисковика к директории;
  • Sitemap – адрес расположения карты сайта.

User-agent

Является своеобразным приветствием для поисковиков, после директивы указывается имя бота. Список часто используемых значений:
  • Googlebot – основной бот Google;
  • Googlebot-Image – для изображений;
  • Yandex – основной робот Яндекс;
  • YandexDirect – обработка информации для контекстной рекламы;
  • YandexImages – для изображений;
  • YandexMetrika – система статистики;
Чтобы обратиться ко всем роботам, необходимо после директивы указать звездочку: «-agent: *».

Disallow и Allow

Использование Disallow необходимо для запрета сканирования определенного каталога или страницы. Чтобы робот не индексировал весь сайт, необходимо использовать слеш:
User-agent: *
Disallow: /
Для закрытия доступа к определенной директории, указывается ее название (слеш перед и после названия папки):
User-agent: *
Disallow: /category/
Таким же образом происходит запрет на индексацию отдельных файлов:
User-agent: *
Disallow: /category/samplepage.html
Если каталог заблокирован, а сканирование страницы, находящейся внутри обязательно – вносят следующие правки:
User-agent: *
Disallow: /category/
Allow: /category/samplepage.html
Данная комбинация осуществляет запрет на индексацию файлов одного типа:
User-agent: *
Disallow: /*.jpg$

Sitemap и Host

При наличии одной или нескольких карт сайта, указывается адрес каждой:
User-agent: *
Sitemap: https://yoursite.com/sitemap1.xml
Sitemap: https://yoursite.com/sitemap2.xml
Директива Host предназначена только для Яндекса, указывает основное зеркало сайта.
User-agent: Yandex
Host: yoursite.com

Спецсимволы

Звездочка (*) используется для запрета всех url, в имени которых содержится указанное слово, к примеру, закрываем доступ к файлам, имеющих в названии «semki»:
User-agent: *
Disallow: /*semki
Для отмены правила запрета, прописывается символ $ в конце строки. При этом, доступ закрыт только к указанной директории, ее содержимое будет доступно:
User-agent: *
Disallow: /page$ #доступ к /page запрещен
		 #доступ к /page.html открыт
Слеш указывается в каждой директиве, запрещает доступ к папке или вложенным страницам.
User-agent: *
Disallow: /category/ #доступ к файлам директории /category/ запрещен
Disallow: /category  #запрещается доступ ко всем файлам, начинающимся с /category
Решетка служит для добавления комментариев, необходимых для личного удобства. Поисковые системы не учитывают информацию после этого знака.

Стандартный robots.txt

Работа с файлом robots.txt на WordPress-сайте может создавать некоторые путаницы для неопытных вебмастеров, поскольку рекомендуемый код, в некоторых строках, лишен логики. Для каждого ресурса требуются свои запреты и разрешения, все зависит от направления деятельности и предпочтений владельца ресурса. Рекомендуем к изучению стандартное содержимое robots.txt:
User-agent: *
Disallow: /wp-admin
Disallow: /wp-content
Disallow: /wp-includes
Disallow: /wp-comments
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: */trackback
Disallow: /xmlrpc.php
Disallow: */feed
Disallow: */author
 
User-agent: Googlebot-Image
Allow: /wp-content/uploads/
 
User-agent: YandexImages
Allow: /wp-content/uploads/
 
host: yoursite.com
 
Sitemap: http://yoursite.com/sitemap.xml
В приведенном примере, директива указывает правила для всех поисковых машин, следующие строки закрывают доступ к административной части и служебным папкам. Запрещаются для индексации авторские страницы и лента RSS. Далее открывается доступ к индексации медиафайлов для ботов изображений популярных поисковиков. В конце прописывается хост и карта сайта. Также рекомендуется добавить запрет на сканирование архивов и меток, если не используются SEO-плагины (Yoast SEO, All in One SEO Pack).

Оптимизированный 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 папке и т.д.
#Disallow: /wp/             # когда WP установлен в подкаталог wp

Sitemap: http://yoursite.com/sitemap.xml     
Sitemap: http://yoursite.com/sitemap2.xml    # еще один файл
#Sitemap: http://yoursite.com/sitemap.xml.gz # сжатая версия (.gz)

Host: www.yoursite.com          # для Яндекса

Первая строка указывает, что правила задействованы ко всем поисковым роботам. При желании можно указать требуемого бота. Далее запрещаем доступ к поиску, служебным директориям, начинающимся с «wp-», архивы, вложения и вставки embed. При помощи директивы Allow разрешаем сканирование всех элементов, имеющих в адресе /uploads – данный параметр обязателен, поскольку в верхней части кода установлен запрет /wp, в которую входит /wp-content/uploads с медиафайлами сайта. Файл robots.txt на WordPress-сайте содержит правило с картой сайта и хостом.

По последней информации, поисковики начали требовать открытие доступа к CSS и JS. Но, не стоит открывать весь каталог, ненужные скрипты и ресурсы страниц можно скрывать.

Создание и загрузка на сервер

Создание и загрузка на сервер
Классический вариант – создать новый текстовый документ с именем robots, после чего внести данные при помощи редактора (рекомендуется Notepad+ или Alkepad). Добавляются рассмотренные вначале директивы, согласно требованиям администратора. Можно адаптировать готовые образцы, которые представлены на многих специализированных сайтах или блогах. Еще один вариант – воспользоваться сервисами генерации robots.txt, к примеру: SeoLib, PR-CY, MediaSova, 4SEO. На этих ресурсах можно детально настроить правила индексирования, выбрать для каких роботов указываются инструкции, вписать конкретные страницы, папки и карту сайта. После этого, в окне результатов появится предпросмотр содержимого файла – если все устраивает, документ готов к сохранению. Следующий этап – загрузка документа в корневую директорию площадки. Можно использовать диспетчер файлов в панели хостинг-провайдера, либо выполнить заливку через FTP клиент FileZilla. Robots.txt готов к проверке при помощи Google Webmaster и Яндекс Вебмастер. Инструмент Google
  • Позволяет проанализировать код на наличие ошибок.
  • Все правки осуществляются прямо в панели проверки, после чего исправленный документ можно повторно загрузить на сервер.
  • Указывает разрешения и запреты, как реагирует бот на внесенные правила.
Инструмент Яндекс
  • После авторизации можно проверять robots.txt без подтверждения прав на сайт.
  • Возможность пакетной обработки страниц.
  • Демонстрируются все ошибки директив, которые неправильно обрабатываются ботом.

P.S.

Работа с файлом robots.txt на WordPress-сайте заключается в тщательном анализе каталогов, которые подлежат запрету или разрешению к индексации. Стоит внимательно изучить основные директивы и важность определенных каталогов для поисковых машин. Процесс создания не затруднит малоопытных вебмастеров, поскольку в сети присутствует множество примеров и специальных сервисов для их генерации. Есть 2 основных правила при самостоятельном написании кода: строки, относящиеся к одному роботу – не должны содержать пропусков, разделение правил для разных ботов осуществляется при помощи пустой строки.