К сожалению в WordPress нет штатных средств для создания robots.txt, однако его наличие, и правильное наполнение — жизненно важно для нормального функционирования сайта.
robots.txt сообщает поисковым системам о том, какие URL и разделы сайта не должны быть проиндексированы. Это важно в контексте того, что поисковые системы очень не любят дубли публикаций, как пример, на эту страницу можно попасть по адресу http://tkacheff.ru/683/robots-txt-dlya-wordpress/ и по адресу http://tkacheff.ru/?p=683 поэтому один из URL необходимо закрыть от индексации, во избежании появления дублей.
Так же дублированный контент может появляться на страницах категорий, тегов, архивов, и архивов дат, такие ситуации, для лучшей поисковой оптимизации вашего сайта, следует избегать. Помимо этого, хорошим тоном является закрытие от индексации страниц не несущих смысловой нагрузки, например страницу входа, регистрации, и.т.п…
Директивы robots.txt
User-agent:
Директива User-agent: указывает для какого поискового робота будут работать правила. Указав в качестве значения *
мы подскажем поисковым системам, что правила действительны для любого поискового робота. Если необходимо, чтобы правила работали для конкретного робота, то нужно указать в эт ой директиве его имя, для Яндекса — Yandex
, для Гугла — Googlebot
Disallow:
Директива Disallow: указывает поисковому роботу, правила для запрета индексации URL указанных в значении директивы. Следует помнить, что под фильтр могут попасть URL которым Вы на первый взгляд не хотели запрещать индексацию, например указав Disallow: */kabinet
Думая, что это закроет URL http://site/kabinet на котором у Вас находится личный кабинет пользователя, вы заодно еще закроете статью с URL http://site/mebel/kabinet-direktora/
Allow:
Директива Allow: может находиться как до, так и после директивы Disallow: и является противоположностью предыдущей, она разрешает поисковому роботу индексировать URL указазанный в значении директивы. Например указав Allow: */uploads
мы намеренно разрешаем поисковым системам индексировать URL в которых встречается /uploads. Для WordPress это правило обязательно, поскольку обычно мы запрещаем индексировать URL начинающиеся с /wp-, и под это правило попадает каталог для размещения медиафайлов /wp-content/uploads и, чтобы перебить запрещающее правило Disallow: /wp- необходимо явно разрешить индексацию URL /uploads, ведь там у нас располагаются медиафайлы которые должны индексироваться.
Sitemap:
Директива Sitemap: указывает поисковому роботу, где именно на Вашем сайте располагается файл с картой сайта в формате XML. Если у Вас несколько файлов с картой, то необходимо указывать каждый файл на новой строке, таким образом, у Вас в robots.txt будет столько директив Sitemap: сколько файлов карт сайта находится на Вашем сайте. Либо согласно правилам www.sitemaps.org Вы можете создать индексный файл карты сайта и в нем указать все ваши карты, тогда в robots.txt будет необходимо добавить только этот индексный файл Sitemap: http://site/sitemap-index.xml
. Помимо XML файлов в директиве можно указать и сжатую GZ версию карты сайта.
Host:
Директива Host: действительна только для робота Яндекса, является межсекционной и работает в любом месте файла, должна отделяться от остальных директив пустой строкой. Поскольку директива понимается только поисковым роботом от Яндекс, рекомендую ставить ее в самый конец файла robots.txt, дыбы остальные роботы не «спотыкались» об нее. Этой директивой мы указываем Яндексу главное зеркало сайта.
Теперь, зная основные директивы, Вы легко можете составить свой собственный robots.txt для Вашего сайта. Файл можно создать в обычном блокноте, и разместить потом в корневой директории вашего сайта. Он должен открываться по адресу http://site/robots.txt
Пример robots.txt с этого сайта
User-agent: * Allow: */uploads Disallow: /wp- Disallow: *?s= Disallow: *?attachment_id= Disallow: */feed Disallow: /xmlrpc.php Disallow: /kabinet Disallow: /js/ Disallow: /css/ Disallow: */trackback Disallow: */page/ Sitemap: http://tkacheff.ru/sitemap.xml Sitemap: http://tkacheff.ru/sitemap.xml.gz Host: tkacheff.rucomments powered by HyperComments