Гид компьютерного мира - Информационный портал
  • Главная
  • Ошибки
  • Файл robots txt в вордпрессе. Правильная настройка для плагина WooCommerce

Файл robots txt в вордпрессе. Правильная настройка для плагина WooCommerce

Правильно созданный файл robots.txt способствует быстрой индексации страниц сайта. Этот файл является служебным и призван улучшать поисковую оптимизацию сайта. Внутренняя оптимизация страниц также немаловажна для проекта и ею нужно заниматься.

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

Как создать robots.txt для WordPress

Чтобы приступить к созданию правильного файла, для начала давайте поймем, где находится robots.txt WordPress. Он располагается в корне сайта. Чтобы просмотреть корневые папки и файлы вашего проекта, необходимо воспользоваться любым FTP-клиентом, для этого просто нужно нажать на настроенное «Соединение».

Чтобы посмотреть содержимое нашего служебного файла, достаточно просто набрать в адресной строке после имени сайта robots.txt. Пример: https ://mysite .com /robots .txt

WordPress robots.txt где лежит вы знаете, осталось взглянуть, как должен выглядеть идеальный служебный файл для указанного выше движка.

  1. В первую очередь в файле необходимо указать пусть к карте сайта:

Sitemap: http://web-profy.com/sitemap.xml

  1. А теперь непосредственно правильная структура файла robots.txt для WordPress:

Disallow: /wp-admin

Disallow: /wp-includes

Disallow: /wp-content/plugins

Disallow: /wp-content/cache

Disallow: /wp-content/themes

Disallow: /trackback

Disallow: */trackback

Disallow: */*/trackback

Disallow: */*/feed/*/

Disallow: */feed

User-agent: Yandex

Disallow: /wp-admin

Disallow: /wp-includes

Disallow: /wp-content/plugins

Disallow: /wp-content/cache

Disallow: /wp-content/themes

Disallow: /trackback

Disallow: */trackback

Disallow: */*/trackback

Disallow: */*/feed/*/

Disallow: */feed

Host: mysite.com

Sitemap: http://mysite.com/sitemap.xml.gz

Sitemap: http://mysite.com/sitemap.xml

Достаточно просто скопировать эти данные в свой файл. Так выглядит правильный robots.txt для WordPress.

Теперь рассмотрим, что означает каждая из строк в структуре служебного файла:

User-agent: * — строка, которая показывает, что все введенные ниже данные будут применимы относительно всех поисковых систем.

Однако для Яндекса правило будет выглядеть следующим образом: User-agent: Yandex.

Allow: — страницы, которые поисковые роботы могут индексировать.

Disallow: — страницы, которые поисковым роботам индексировать запрещено.

Host: mysite.com — зеркало сайта, которое нужно указывать в данном служебном файле.

Sitemap: — путь к карте сайта.

robots.txt для сайта WordPress, на котором не настроены ЧПУ

robots.txt для сайта WordPress, где находится список правил будет выглядеть несколько иначе в случае, если на сайте не настроены ЧПУ.

Disallow: /cgi-bin

Disallow: /wp-admin

Disallow: /wp-includes

Disallow: /wp-content/plugins

Disallow: /wp-content/cache

Disallow: /wp-content/themes

Disallow: /trackback

Disallow: */trackback

Disallow: */*/trackback

Disallow: */*/feed/*/

Disallow: */feed

User-agent: Yandex

Disallow: /cgi-bin

Disallow: /wp-admin

Disallow: /wp-includes

Disallow: /wp-content/plugins

Disallow: /wp-content/cache

Disallow: /wp-content/themes

Disallow: /trackback

Disallow: */trackback

Disallow: */*/trackback

Disallow: */*/feed/*/

Disallow: */feed

Host: mysite.com

Sitemap: http://mysite.com /sitemap.xml.gz

Sitemap: http://mysite.com /sitemap.xml

Какие могут возникнуть проблемы на WordPress сайте, если нет настроены ЧПУ. Строка в служебном файле robots.txt Disallow : /*?* не позволяет индексировать страницы сайта, а именно так выглядят адреса страниц проекта при отсутствии настроек ЧПУ. Это может негативно отражаться на рейтинге интернет-проекта в поисковиках, поскольку нужный пользователям контент просто не будет им показываться в результатах выдачи.

Конечно, эту строку можно в файле можно легко удалить. Тогда сайт будет работать в нормальном режиме.

Как убедиться в том, что robots.txt составлен правильно

Сделать это можно при помощи специального инструмента от Яндекс — Яндекс.Вебмастер .

Необходимо зайти в Настройки индексирования — Анализ robots .txt

Внутри все интуитивно понятно. Необходимо нажать на «Загрузить robots .txt с сайта». Также вы можете каждую страницу отдельно просмотреть на наличие возможности ее индексации. В «Список URL» можно просто ввести адрес интересующих вас страниц, система покажет все сама.

Не стоит забывать о том, что все изменения, которые вы вносите в файл robots.txt, будут доступны не сразу, а спустя лишь несколько месяцев.

Как правильно сохранять файл robots.txt

Чтобы наш служебный файл был доступен в такой поисковой системе, как Google, его необходимо сохранить следующим образом:

  1. Файл в обязательном порядке должен иметь текстовый формат;
  2. Разместить его необходимо корне вашего сайта;
  3. Файл должен иметь имя robots.txt и никакое другое больше.

Адрес, по которому поисковые роботы находят robots.txt должен иметь следующий вид — https://mysite.com/robots.txt

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

Фактически, с помощью этого служебного файла можно указать, какие разделы будут индексироваться в поисковых системах, а какие нет.

Создание файла robots.txt

1. Создайте обычный текстовый файл с названием robots в формате .txt .

2. Добавьте в него следующую информацию:

User-agent: Yandex Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-comments Disallow: /wp-content/plugins Disallow: /wp-content/themes Disallow: /wp-content/cache Disallow: /wp-login.php Disallow: /wp-register.php Disallow: */trackback Disallow: */feed Disallow: /cgi-bin Disallow: /tmp/ Disallow: *?s= User-agent: * Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-comments Disallow: /wp-content/plugins Disallow: /wp-content/themes Disallow: /wp-content/cache Disallow: /wp-login.php Disallow: /wp-register.php Disallow: */trackback Disallow: */feed Disallow: /cgi-bin Disallow: /tmp/ Disallow: *?s= Host: site.com Sitemap: http://site.com/sitemap.xml

3. Замените в в текстовом файле строчку site.com на адрес Вашего сайта .

4. Сохраните изменения и загрузите файл robots.txt () в корневую папку Вашего сайта.

5. Готово.

Для просмотра и скачки примера, нажмите кнопку ниже и сохраните файл (Ctrl + S на клавиатуре).

Разбираемся в файле robots.txt (директивы)

Давайте теперь более детально разберем, что именно и зачем мы добавили в файл robots.txt.

User-agent — директива, которая используется для указания названия поискового робота. С помощью этой директивы можно запретить или разрешить поисковым роботам посещать Ваш сайт. Примеры:

Запрещаем роботу Яндекса просматривать папку с кэшем:

User-agent: Yandex Disallow: /wp-content/cache

Разрешаем роботу Bing просматривать папку themes (с темами сайта):

User-agent: bingbot Allow: /wp-content/themes

Allow и Disallow — разрешающая и запрещающая директива. Примеры:

Разрешим боту Яндекса просматривать папку wp-admin:

User-agent: Yandex Allow: /wp-admin

Запретим всем ботам просматривать папку wp-content:

User-agent: * Disallow: /wp-content

В нашем robots.txt мы не используем директиву Allow, так как всё, что не запрещено боту с помощью Disallow — по умолчанию будет разрешено.

Host — директива, с помощью которой нужно указать главное зеркало сайта, которое и будет индексироваться роботом.

Sitemap — используя эту директиву, нужно указать путь к . Напомню, что карта сайта является очень важным инструментом при продвижении сайта! Обязательно указывайте её в этой директиве!

Если остались какие-то вопросы — задавайте их в комментарий. Если же информации в этом уроке для Вас оказалось недостаточно, рекомендую почитать подробнее о всех директивах и способах их использования перейдя по этой ссылке .

Приветствую, друзья! В этом уроке мы поговорим о создании файла robots.txt, который показывает роботам поисковых систем, какие разделы Вашего сайта нужно посещать, а какие нет. Фактически, с помощью этого служебного файла можно указать, какие разделы будут индексироваться в поисковых системах, а какие нет. Создание файла robots.txt 1. Создайте обычный текстовый файл с названием robots в формате.txt. 2. Добавьте в него следующую информацию: User-agent: Yandex Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-comments Disallow: /wp-content/plugins Disallow: /wp-content/themes Disallow: /wp-content/cache Disallow: /wp-login.php Disallow: /wp-register.php Disallow: */trackback Disallow: */feed Disallow: /cgi-bin Disallow: /tmp/ Disallow: *?s= User-agent: * Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-comments Disallow: /wp-content/plugins Disallow: /wp-content/themes…

Robots.txt — играет очень важную роль в индексации. Правильный robots.txt — вообще очень важен. А насколько он правильный? А кто так сказал? А точно ли это поможет в продвижении ресурса в поисковых системах? Масса подобных вопросов возникала и у меня, когда я оптимизировал и искал информацию в интернете об этом. В принципе, роботсом я заинтересовался еще когда у меня был сайт на Ucoz (возможно, кстати, вам понравится статья про ), благо там его можно было настроить, и я постиг основы.

Если говорить совсем уж просто: для правильного представления вашего ресурса. Например, поисковые роботы, при посещении и индексации вашего сайта, могут взять, да и проиндексировать ненужные системные элементы. Как правило, такие страницы не слишком пригодны для восприятия роботами, и потому они будут считаться плохо оптимизированными. Если этих самых страниц будет слишком много, поисковик может понизить ваш проект в выдаче.

В абсолютно противоположном случае, что не менее прискорбно, может оказаться так, что ваш сайт и вовсе будет закрыт для индексации. Такое случается не так уж часто, но вам все равно следует учитывать это.

Правильная настройка robots.txt для WordPress

Чтобы не лить воду, сразу скажу, что здесь есть два способа. Вы можете: либо настроить robots.txt через редактор плагина Yoast SEO (который ОЧЕНЬ рекомендован к установке), либо создать такой файл вручную (в блокноте, например), и разместить в корне сайта. Во втором случае, кстати говоря, стоит помнить, что размещать файл нужно так, чтобы он был доступен по адресу: site.ru/robots.txt .

Хотя, я думаю, что с этими мелочами вы итак разберетесь. Сосредоточимся на содержимом этого файла.

User-agent: * Disallow: /cgi-bin Disallow: /? Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: /wp- Disallow: *?s= Disallow: *&s= Disallow: */embed Disallow: /xmlrpc.php Disallow: *utm= Disallow: *openstat= Disallow: /tag/ # Закрываем для того, чтобы не индексировалось слишком много дублей. # Если вы хотите, чтобы метки индексировались, удалите это правило. Allow: */uploads User-agent: GoogleBot Disallow: /cgi-bin Disallow: /? Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: /wp- Disallow: *?s= Disallow: *&s= Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: /xmlrpc.php Disallow: *utm= Disallow: *openstat= Allow: */uploads Allow: /*/*.js Allow: /*/*.css Allow: /wp-*.png Allow: /wp-*.jpg Allow: /wp-*.jpeg Allow: /wp-*.gif Allow: /wp-admin/admin-ajax.php User-agent: Yandex Disallow: /cgi-bin Disallow: /? Disallow: /wp- Disallow: *?s= Disallow: *&s= Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: /xmlrpc.php Allow: /wp-*.jpg Allow: /wp-admin/admin-ajax.php Allow: */uploads Allow: /wp-*.jpeg Allow: /wp-*.gif Allow: /*/*.js Allow: /*/*.css Allow: /wp-*.png Clean-Param: utm_source&utm_medium&utm_campaign Clean-Param: openstat Sitemap: https://site.ru/sitemap.xml Sitemap: https://site.ru/sitemap.xml.gz # Указываем, если для создания карты использовали Google XML Sitemap Host: https://site.ru # Указываем с протоколом

Несколько очень важных моментов:

  • Если вы используете/собираетесь , то вам необходимо будет разрешить для Яндекса доступ к xml-файлу
  • Когда вы будете копировать содержимое в файл — лучше убрать комментарии (пояснения с #)
  • Как я уже говорил, правило Disallow: /tag/ можно убрать. Лично я убрал метки из индексации из-за огромного количества дублей (страниц с одинаковым содержимым), т.к они пагубно влияют на продвижение.
  • Если вы НЕ используете SSL сертификат (и https протокол), указывать http протокол в Host: НЕ нужно . Директива будет выглядеть как Host: www.site.ru или Host: site.ru .

Почему надо указывать правила для каждого робота?

Благодаря такому подходу, по мнению некоторых оптимизаторов и вебмастеров, можно добиться куда больших результатов в продвижении сайта. И ведь это логично: если в правилах есть прямые указания для каждого робота, то и индексировать они будут активнее и чаще.

Robots.txt создан для регулирования поведения поисковых роботов на сайтах, а именно куда им заходить можно и брать в поиск, а куда нельзя. Лет 10 назад сила данного файла была велика, по его правилам работали все поисковые системы, но сейчас он скорее как рекомендация, чем правило.

Но пока не отменили, вебмастера должны делать его и настраивать правильно исходя из структуры и иерархии сайтов. Отдельная тема это WordPress, потому что CMS содержит множество элементов, которые не нужно сканировать и отдавать в индекс. Разберемся как правильно составить robots.txt

Где лежит файл robots в WordPress

На любом из ресурсов robots.txt должен лежать в корневой папке. В случае с вордпресс, там где находится папка wp-admin и ей подобные.

Расположение на сервере

Если не создавался и не загружался администратором сайта, то по умолчанию на сервере не найти. Стандартная сборка WordPress не предусматривает наличие такого объекта.

Как создать правильный robots txt

Создать правильный robots txt задача не трудная, сложнее прописать в нем правильные директивы. Сначала создадим документ, открываем программу блокнот и нажимаем сохранить как.


Сохраняем документ

В следующем окне задаем название robots, оставляем расширение txt, кодировку ANSI и нажимаем сохранить. Объект появится в папке куда произошло сохранение. Пока документ пустой и ничего не содержит в себе, давайте разберемся какие именно директивы он может поддерживать.

При желании можете сразу скачать его на сервер в корень через .


Сохранение роботса

Настройка команд

Выделю четыре основные команды:

  • User-agent: показывает правила для разных поисковых роботов, либо для всех, либо для отдельных
  • Disalow: запрещает доступ
  • Allow: разрешаем доступ
  • Sitemap: адрес до XML карты

Устаревшие и ненужные конфигурации:

  1. Host: указывает главное зеркало, стало не нужным, потому что поиск сам определит правильный вариант
  2. Crawl-delay: ограничивает время на пребывание робота на странице, сейчас сервера мощные и беспокоится о производительности не нужно
  3. Clean-param: ограничивает загрузку дублирующегося контента, прописать можно, но толку не будет, поисковик проиндексирует все, что есть на сайте и возьмет по–максимому страниц

Рабочий пример инструкций для WordPress

Дело в том что поисковой робот не любит запрещающие директивы, и все равно возьмет в оборот, что ему нужно. Запрет на индексацию должен быть объектов, которые 100% не должны быть в поиске и в базе Яндекса и Гугла. Данный рабочий пример кода помещаем в robots txt.

User-agent: * Disallow: /wp- Disallow: /tag/ Disallow: */trackback Disallow: */page Disallow: /author/* Disallow: /template.html Disallow: /readme.html Disallow: *?replytocom Allow: */uploads Allow: *.js Allow: *.css Allow: *.png Allow: *.gif Allow: *.jpg Sitemap: https://ваш домен/sitemap.xml

Разберемся с текстом и посмотрим что именно мы разрешили, а что запретили:

  • User-agent, поставили знак *, тем самым сообщив что все поисковые машины должны подчиняться правилам
  • Блок с Disallow запрещает к индексу все технические страницы и дубли. обратите внимание что я заблокировал папки начинающиеся на wp-
  • Блок Allow разрешает сканировать скрипты, картинки и css файлы, это необходимо для правильного представления проекта в поиске иначе вы получите портянку без оформления
  • : показывает путь до XML карты сайта, обязательно нужно ее сделать, а так же заменить надпись”ваш домен”

Остальные директивы рекомендую не вносить, после сохранения и внесения правок, загружаем стандартный robots txt в корень WordPress. Для проверки наличия открываем такой адрес https://your-domain/robots.txt, заменяем домен на свой, должно отобразится так.


Адрес в строке запроса

Как проверить работу robots.txt

Стандартный способ проверить через сервис yandex webmaster . Для лучшего анализа нужно зарегистрировать и установить на сайт сервис. Вверху видим загрузившийся robots, нажимаем проверить.


Проверка документа в yandex

Ниже появится блок с ошибками, если их нет то переходим к следующему шагу, если неверно отображается команда, то исправляем и снова проверяем.


Отсутствие ошибок в валидаторе

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


Проверка папок и страниц в яндексе

Проверили, все срабатывает, перейдем к следующему способу это настройка robots с помощью плагинов. Если процесс не понятен, то смотрите наше видео.

Плагин–генератор Virtual Robots.txt

Если не хочется связываться с FTP подключением, то приходит на помощь один отличный WordPress плагин–генератор называется Virtual Robots.txt . Устанавливаем стандартно из админки вордпресс поиском или загрузкой архива, выглядит так.


Как выглядит Virtual Robots.txt

Настройки > Virtual Robots.txt, видим знакомую конфигурацию, но нам нужно ее заменить, на нашу из статьи. Копируем и вставляем, не забываем сохранять.


Настройка Virtual Robots.txt

Роботс автоматически создастся и станет доступен по тому же адресу. При желании проверить есть он в файлах WordPress – ничего не увидим, потому что документ виртуальный и редактировать можно только из плагина, но Yandex и Google он будет виден.

Добавить с помощью Yoast SEO

Знаменитый плагин Yoast SEO предоставляет возможность добавить и изменить robots.txt из панели WordPress. Причем созданный файл появляется на сервере (а не виртуально) и находится в корне сайта, то есть после удаления или деактивации роботс остается. Переходим в Инструменты > Редактор.


Yoast SEO редактор файлов

Если robots есть, то отобразится на странице, если нет есть кнопка “создать”, нажимаем на нее.


Кнопка создания robots

Выйдет текстовая область, записываем, имеющийся текст из универсальной конфигурации и сохраняем. Можно проверить по FTP соединению документ появится.

Изменить модулем в All in One SEO

Старый плагин All in One SEO умеет изменять robots txt, чтобы активировать возможность переходим в раздел модули и находим одноименный пункт, нажимаем Activate.


Модули в All In one Seo

В меню All in One SEO появится новый раздел, заходим, видим функционал конструктора.


Работа в модуле AIOS
  1. Записываем имя агента, в нашем случае * или оставляем пустым
  2. Разрешаем или запрещаем индексацию
  3. Директория или страница куда не нужно идти
  4. Результат

Модуль не удобный, создать по такому принципу валидный и корректный robots.txt трудно. Лучше используйте другие инструменты.

Правильная настройка для плагина WooCommerce

Чтобы сделать правильную настройку для плагина интернет магазина на WordPress WooCommerce, добавьте эти строки к остальным:

Disallow: /cart/ Disallow: /checkout/ Disallow: /*add-to-cart=*

Делаем аналогичные действия и загружаем на сервер через FTP или плагином.

Итог

Подведем итог что нужно сделать чтобы на сайте WordPress был корректный файл для поисковиков:

  • Создаем вручную или с помощью плагина файл
  • Записываем в него инструкции из статьи
  • Загружаем на сервер
  • Проверяем в валидаторе Yandex
  • Не пользуйтесь генераторами robots txt в интернете, пошевелите немного руками

Совершенствуйте свои блоги на WordPress, продвигайтесь и правильно настраивайте все параметры, а мы в этом поможем, успехов!

В этой статье пример оптимального, на мой взгляд, кода для файла robots.txt под WordPress, который вы можете использовать в своих сайтах.

Для начала, вспомним зачем нужен robots.txt - файл robots.txt нужен исключительно для поисковых роботов, чтобы «сказать» им какие разделы/страницы сайта посещать, а какие посещать не нужно. Страницы, которые закрыты от посещения не будут попадать в индекс поисковиков (Yandex, Google и т.д.).

Вариант 1: оптимальный код robots.txt для WordPress

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: */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 папке и т.д. Allow: /wp-admin/admin-ajax.php #Disallow: /wp/ # когда WP установлен в подкаталог wp Sitemap: http://example.com/sitemap.xml Sitemap: http://example.com/sitemap2.xml # еще один файл #Sitemap: http://example.com/sitemap.xml.gz # сжатая версия (.gz) # Версия кода: 1.1 # Не забудьте поменять `site.ru` на ваш сайт.

Разбор кода:

    В строке User-agent: * мы указываем, что все нижеприведенные правила будут работать для всех поисковых роботов * . Если нужно, чтобы эти правила работали только для одного, конкретного робота, то вместо * указываем имя робота (User-agent: Yandex , User-agent: Googlebot).

    В строке Allow: */uploads мы намеренно разрешаем индексировать страницы, в которых встречается /uploads . Это правило обязательно, т.к. выше мы запрещаем индексировать страницы начинающихся с /wp- , а /wp- входит в /wp-content/uploads . Поэтому, чтобы перебить правило Disallow: /wp- нужна строчка Allow: */uploads , ведь по ссылкам типа /wp-content/uploads/... у нас могут лежать картинки, которые должны индексироваться, так же там могут лежать какие-то загруженные файлы, которые незачем скрывать. Allow: может быть "до" или "после" Disallow: .

    Остальные строчки запрещают роботам "ходить" по ссылкам, которые начинаются с:

    • Disallow: /cgi-bin - закрывает каталог скриптов на сервере
    • Disallow: /feed - закрывает RSS фид блога
    • Disallow: /trackback - закрывает уведомления
    • Disallow: ?s= или Disallow: *?s= - закрыавет страницы поиска
    • Disallow: */page/ - закрывает все виды пагинации
  1. Правило Sitemap: http://example.com/sitemap.xml указывает роботу на файл с картой сайта в формате XML. Если у вас на сайте есть такой файл, то пропишите полный путь к нему. Таких файлов может быть несколько, тогда указываем путь к каждому отдельно.

    В строке Host: site.ru мы указываем главное зеркало сайта. Если у сайта существуют зеркала (копии сайта на других доменах), то чтобы Яндекс индексировал всех их одинаково, нужно указывать главное зеркало. Директива Host: понимает только Яндекс, Google не понимает! Если сайт работает под https протоколом, то его обязательно нужно указать в Host: Host: http://example.com

    Из документации Яндекса: «Host - независимая директива и работает в любом месте файла (межсекционная)». Поэтому её ставим наверх или в самый конец файла, через пустую строку.

Потому что наличие открытых фидов требуется например для Яндекс Дзен, когда нужно подключить сайт к каналу (спасибо комментатору «Цифровой»). Возможно открытые фиды нужны где-то еще.

В тоже время, фиды имеют свой формат в заголовках ответа, благодаря которому поисковики понимают что это не HTML страница, а фид и, очевидно, обрабатывают его как-то иначе.

Директива Host для Яндекса больше не нужна

Яндекс полностью отказывается от директивы Host, её заменил 301 редирект. Host можно смело удалять из robots.txt . Однако важно, чтобы на всех зеркалах сайта стоял 301 редирект на главный сайт (главное зеркало).

Это важно: сортировка правил перед обработкой

Yandex и Google обрабатывает директивы Allow и Disallow не по порядку в котором они указаны, а сначала сортирует их от короткого правила к длинному, а затем обрабатывает последнее подходящее правило:

User-agent: * Allow: */uploads Disallow: /wp-

будет прочитана как:

User-agent: * Disallow: /wp- Allow: */uploads

Чтобы быстро понять и применять особенность сортировки, запомните такое правило: «чем длиннее правило в robots.txt, тем больший приоритет оно имеет. Если длина правил одинаковая, то приоритет отдается директиве Allow.»

Вариант 2: стандартный robots.txt для WordPress

Не знаю кто как, а я за первый вариант! Потому что он логичнее - не надо полностью дублировать секцию ради того, чтобы указать директиву Host для Яндекса, которая является межсекционной (понимается роботом в любом месте шаблона, без указания к какому роботу она относится). Что касается нестандартной директивы Allow , то она работает для Яндекса и Гугла и если она не откроет папку uploads для других роботов, которые её не понимают, то в 99% ничего опасного это за собой не повлечет. Я пока не заметил что первый robots работает не так как нужно.

Вышеприведенный код немного не корректный. Спасибо комментатору " " за указание на некорректность, правда в чем она заключалась пришлось разбираться самому. И вот к чему я пришел (могу ошибаться):

    Некоторые роботы (не Яндекса и Гугла) - не понимают более 2 директив: User-agent: и Disallow:

  1. Директиву Яндекса Host: нужно использовать после Disallow: , потому что некоторые роботы (не Яндекса и Гугла), могут не понять её и вообще забраковать robots.txt. Cамому же Яндексу, судя по документации , абсолютно все равно где и как использовать Host: , хоть вообще создавай robots.txt с одной только строчкой Host: www.site.ru , для того, чтобы склеить все зеркала сайта.

3. Sitemap: межсекционная директива для Яндекса и Google и видимо для многих других роботов тоже, поэтому её пишем в конце через пустую строку и она будет работать для всех роботов сразу.

На основе этих поправок, корректный код должен выглядеть так:

User-agent: Yandex Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-json/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: */embed Disallow: */page/ Disallow: /cgi-bin Disallow: *?s= Allow: /wp-admin/admin-ajax.php Host: site.ru User-agent: * Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-json/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: */embed Disallow: */page/ Disallow: /cgi-bin Disallow: *?s= Allow: /wp-admin/admin-ajax.php Sitemap: http://example.com/sitemap.xml

Дописываем под себя

Если вам нужно запретить еще какие-либо страницы или группы страниц, можете внизу добавить правило (директиву) Disallow: . Например, нам нужно закрыть от индексации все записи в категории news , тогда перед Sitemap: добавляем правило:

Disallow: /news

Оно запретить роботам ходить по подобным ссылками:

  • http://example.com/news
  • http://example.com/news/drugoe-nazvanie/

Если нужно закрыть любые вхождения /news , то пишем:

Disallow: */news

  • http://example.com/news
  • http://example.com/my/news/drugoe-nazvanie/
  • http://example.com/category/newsletter-nazvanie.html

Подробнее изучить директивы robots.txt вы можете на странице помощи Яндекса (но имейте ввиду, что не все правила, которые описаны там, работают для Google).

Проверка robots.txt и документация

Проверить правильно ли работают прописанные правила можно по следующим ссылкам:

  • Яндекс: http://webmaster.yandex.ru/robots.xml .
  • В Google это делается в Search console . Нужна авторизация и наличия сайта в панели веб-мастера...
  • Сервис для создания файла robots.txt: http://pr-cy.ru/robots/
  • Сервис для создания и проверки robots.txt: https://seolib.ru/tools/generate/robots/

Я спросил у Яндекса...

Задал вопрос в тех. поддержку Яндекса насчет межсекционного использования директив Host и Sitemap:

Вопрос:

Здравствуйте!
Пишу статью насчет robots.txt на своем блоге. Хотелось бы получить ответ на такой вопрос (в документации я не нашел однозначного "да"):

Если мне нужно склеить все зеркала и для этого я использую директиву Host в самом начале фала robots.txt:

Host: site.ru User-agent: * Disallow: /asd

Будет ли в данном примере правильно работать Host: site.ru? Будет ли она указывать роботам что site.ru это основное зеркало. Т.е. эту директиву я использую не в секции, а отдельно (в начале файла) без указания к какому User-agent она относится.

Также хотел узнать, обязательно ли директиву Sitemap нужно использовать внутри секции или можно использовать за пределами: например, через пустую строчку, после секции?

User-agent: Yandex Disallow: /asd User-agent: * Disallow: /asd Sitemap: http://example.com/sitemap.xml

Поймет ли робот в данном примере директиву Sitemap?

Надеюсь получить от вас ответ, который поставит жирную точку в моих сомнениях.

Ответ:

Здравствуйте!

Директивы Host и Sitemap являются межсекционными, поэтому будут использоваться роботом вне зависимости от места в файле robots.txt, где они указаны.

--
С уважением, Платон Щукин
Служба поддержки Яндекса

Заключение

Важно помнить, что изменения в robots.txt на уже рабочем сайте будут заметны только спустя несколько месяцев (2-3 месяца).

Ходят слухи, что Google иногда может проигнорировать правила в robots.txt и взять страницу в индекс, если сочтет, что страница ну очень уникальная и полезная и она просто обязана быть в индексе. Однако другие слухи опровергают эту гипотезу тем, что неопытные оптимизаторы могут неправильно указать правила в robots.txt и так закрыть нужные страницы от индексации и оставить ненужные. Я больше склоняюсь ко второму предположению...

Динамический robots.txt

В WordPress запрос на файл robots.txt обрабатывается отдельно и совсем не обязательно физически создавать файл robots.txt в корне сайта, более того это не рекомендуется, потому что при таком подходе плагинам будет очень сложно изменить этот файл, а это иногда нужно.

О том как работает динамическое создание файла robots.txt читайте в описании функции , а ниже я приведу пример как можно изменить содержание этого файла, налету, через хук .

Для этого добавьте следующий код в файл functions.php:

Add_action("do_robotstxt", "my_robotstxt"); function my_robotstxt(){ $lines = [ "User-agent: *", "Disallow: /wp-admin/", "Disallow: /wp-includes/", "", ]; echo implode("\r\n", $lines); die; // обрываем работу PHP }

User-agent: * Disallow: /wp-admin/ Disallow: /wp-includes/

Crawl-delay - таймаут для сумасшедших роботов (с 2018 года не учитывается)

Яндекс

Проанализировав письма за последние два года в нашу поддержку по вопросам индексирования, мы выяснили, что одной из основных причин медленного скачивания документов является неправильно настроенная директива Crawl-delay в robots.txt […] Для того чтобы владельцам сайтов не пришлось больше об этом беспокоиться и чтобы все действительно нужные страницы сайтов появлялись и обновлялись в поиске быстро, мы решили отказаться от учёта директивы Crawl-delay.

Когда робот Яндекса сканирует сайт как сумасшедший и это создает излишнюю нагрузку на сервер. Робота можно попросить «поубавить обороты».

Для этого нужно использовать директиву Crawl-delay . Она указывает время в секундах, которое робот должен простаивать (ждать) для сканирования каждой следующей страницы сайта.

Для совместимости с роботами, которые плохо следуют стандарту robots.txt, Crawl-delay нужно указывать в группе (в секции User-Agent) сразу после Disallow и Allow

Робот Яндекса понимает дробные значения, например, 0.5 (пол секунды). Это не гарантирует, что поисковый робот будет заходить на ваш сайт каждые полсекунды, но позволяет ускорить обход сайта.

User-agent: Yandex Disallow: /wp-admin Disallow: /wp-includes Crawl-delay: 1.5 # таймаут в 1.5 секунды User-agent: * Disallow: /wp-admin Disallow: /wp-includes Allow: /wp-*.gif Crawl-delay: 2 # таймаут в 2 секунды

Google

Робот Google не понимает директиву Crawl-delay . Таймаут его роботам можно указать в панели вебмастера.

На сервисе avi1.ru Вы можете уже сейчас приобрести продвижение SMM более чем в 7 самых популярных социальных сетях. При этом обратите внимание на достаточно низкую стоимость всех услуг сайта.

Лучшие статьи по теме