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

Автор:
(Людмила Лунева)

Веб-дизайнер и разработчик сайтов на wordpress

Начало статьи читайте здесь »

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

Разделы, закрытые от индексации, не попадут в индекс поисковых систем.

Правильный robots.txt для сайта на wordpress
Что такое Индекс?
Это база данных поисковой системы, в которой она хранит набор встречающихся на интернет-страницах слов и словосочетаний. Эта информация соотнесена с адресами тех веб-страниц, на которых она встречаются, и постоянно пополняется новой информацией, собираемой роботом-пауком поисковой системы.

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

Вообщем, robots.txt – это очень полезный и нужный любому сайту файл.

Общая для всех сайтов часть файла:

Итак, создаем текстовый документ с названием robots.txt и пишем в него следующее:

User-agent: *
Disallow: /cgi-bin/
Disallow: /wp-
Disallow: /*trackback
Disallow: /feed
Disallow: /?s=
Disallow: /xmlrpc.php
Allow: /wp-content/uploads/
Host: www.yourdomain.ru
 
Sitemap: http://yourdomain.ru/sitemap.xml
 
User-agent: Googlebot-Image
Allow: /wp-content/uploads/
 
User-agent: YandexImages
Allow: /wp-content/uploads/
 
User-agent: ia_archiver
Disallow: /

Пояснения:

  • User-agent: * - Директива всем роботам

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

  • Disallow: /cgi-bin/

    Здесь мы запрещаем индексировать папку со скриптами.

  • Disallow: /wp- - Запрещает индексацию всех папок и файлов движка, начинающихся с wp- (т.е. папок /wp-admin/, /wp-includes/, /wp-content/ и всех файлов, расположенных в корневой папке).
  • Disallow: /*trackback
    Disallow: /*comment-
    Disallow: /feed

    Запрещаем индексацию комментариев, трекбеков и фида.

    Спецсимвол * означает любую (в том числе пустую) последовательность символов, т.е. все, что находится в адресе до указанной части или после нее.

  • Disallow: /?s= - Запрещаем индексацию результатов поиска.
  • Allow: /wp-content/uploads/ - Разрешение индексировать папку uploads (а значит и расположенные в ней картинки).

    Правило Яндекса для robots.txt гласит:

    "Директивы Allow и Disallow из соответствующего User-agent блока сортируются по длине префикса URL (от меньшего к большему) и применяются последовательно. Если для данной страницы сайта подходит несколько директив, то выбирается последняя в порядке появления в сортированном списке."

    Получается, что директиву Аllow можно указать в любом месте.
    Яндекс самостоятельно сортирует список директив и располагает их по длине префикса.

    Google понимает Allow и вверху и внизу секции.

    Касательно директивы Allow: /wp-content/uploads/ - поскольку, далее мы разрешаем индексировать роботам-индексаторам картинок папку с картинками, я не уверена, что эта директива нужна.

    Но, наверное, лишней не будет. Так что, это - на ваше усмотрение.

  • Host: www.glavnoye-zerkalo.ru - Директива Host понимается только Яндексом и не понимается Гуглом.

    В ней указывается главное зеркало сайта, в случае, если у вашего сайта есть зеркала. В поиске будет участвовать только главное зеркало.

    Директиву Host лучше написать сразу после директив Disallow (для тех роботов, которые не полностью следуют стандарту при обработке robots.txt).

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

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

  • Sitemap: http://mysite.ru/sitemaps.xml - Указываем путь к файлу sitemaps.xml

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

  • User-agent: Googlebot-Image
    Allow: /wp-content/uploads/
     
    User-agent: YandexImages
    Allow: /wp-content/uploads/

    Разрешает роботам Googlebot и YandexImages индексировать наши картинки.

  • User-agent: ia_archiver
    Disallow: /

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

Итак, мы рассмотрели стандартную часть файла robots.txt, которая подойдет для любого сайта на wordpress.

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

Индивидуальные настройки:

  • Если на вашем сайте есть система древовидных комментариев, как на моем блоге, тогда нужно запретить индексацию таких адресов:

    *?replytocom=

    Их создает кнопка (ссылка) "Ответить на комментарий".

  • Страницы архивов на разных сайтах имеют различные адреса, в зависимости от того, как формируются URL на сайте, включены ли ЧПУ или нет.

    Как определить адреса архивов вашего сайта?

    Для этого нужно открыть архив любого месяца и посмотреть, как выглядит адрес страницы архива.

    Он может выглядеть, например, так: http://sait.ru/archives/date/post-1.

    В этом случае, выделяем общую для всех архивов по дате часть адреса:

    /archives/date/.

    Соответственно, в файле robots.txt указываем:

    Disallow: /archives/date/*

    Будьте внимательны - у вас архивы могут иметь другие адреса.
    Например, архив года может иметь такой адрес: http://sait.ru/2012

    Тогда закрывать нужно эту часть - /2012/

    Напоминаю, что спецсимвол * означает любую последовательность символов, т.е. все, что находится в адресе далее.

  • Точно так же определяем адреса архивов тегов и архивов автора.
    И закрываем их в robots.txt.

    Disallow: /archives/tag/
    Disallow: /archives/author/

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

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

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

    Один-два (редко три) тега к одному посту вполне достаточно.

  • Можно, также, закрыть индексацию всех главных страниц, кроме первой.

    Обычно, их адреса выглядят так: http://sait.ru/page/2, http://sait.ru/page/3 и т. д., но лучше проверить.

    Перейдите по ссылкам навигации внизу Главной страницы на вторую страницу и посмотрите, как выглядит ее адрес в адресной строке.

    Закрываем эти страницы:

    Disallow: /page/*

  • Иногда, на сайте требуется закрыть от индексации еще какие то страницы или папки. В этом случае, действуете аналогично - открываете в браузере нужную вам страницу и смотрите ее адрес. А дальше закрываете его в robots.txt.

    Учтите, что если вы закрываете, например, папку "book", то автоматически закроются и все файлы, расположенные в этой папке.

    Если закрыть страницу, в URL'е которой есть, например, "news" так: */news/,
    то закроются и страницы /news/post-1 и /category/news/.

robots.txt полностью ↓

Открыть ↓

Справка:

Подробности составления robots.txt можно изучить на странице помощи Яндекса - http://help.yandex.ru/webmaster/?id=996567

Проверить правильность составления файла можно в webmaster.yandex - Настройка индексирования - Анализ robots.txt

В Google robots.txt можно проверить по этой ссылке:

https://www.google.com/webmasters/tools/crawl-access?hl=ru&siteUrl=http://site.ru/

Проверяемый сайт должен быть добавлен в панель веб-мастера.

P.S. Для Яндекса и Google правила составления robots.txt немного различаются.

Толкование правил составления robots.txt можно прочитать здесь - http://robotstxt.org.ru

К сожалению, проверить можно только синтаксис.
Правильно ли вы закрыли от индексации разделы сайта, покажет только время :).

Ну вот и все - файл robots.txt готов, осталось только загрузить его в корневой каталог нашего сайта.

Напоминаю, что корневой каталог это папка в которой находится файл config.php.

И последнее - все, сделанные вами изменения в robots.txt, будут заметны на сайте только спустя несколько месяцев.

В тему:

Однажды видела сайт на wordpress, на котором не было файла robots.txt.
Этот сайт некоторое время простоял пустым - т.е. с одной стандартной записью, которая по умолчанию присутствует в wordpress.

Представьте себе, какой шок испытал владелец сайта, когда обнаружил, что Яндекс проиндексировал 2 страницы с контентом и больше тысячи страниц самого движка :)

На этой веселой ноте заканчиваю.

Внутренняя оптимизация сайта:

1. Оптимизация кода шаблона.

2. Оптимизация контента.

3. Перелинковка.

4. Файл robots.txt.

5. Файл sitemap.xml.

6. Пинг.

Хотите получать сообщения о скидочных акциях,
новых постах и темах для wordpress?
  1. Здравствуйте Людмила!
    Хочу купить у Вас тему и заказать аудит (в аудит входит составление робот TXT?)

    И еще сейчас переношу сайт на бегет.
    Как мне лучше сделать, сначала тему или аудит?

    И подскажите, потерялась на Вашем сайте, не могу найти страницу с ценами на аудит.

    • Как мне лучше сделать, сначала тему или аудит?

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

      в аудит входит составление робот TXT?

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

      не могу найти страницу с ценами на аудит.

      В верхнем меню - Платные услуги - Аудит сайта

  2. Здравствуйте? Людмила!

    Вы пишете: "Можно, также, закрыть индексацию всех главных страниц, кроме первой.
    Обычно, их адреса выглядят так: http://sait.ru/page/2, http://sait.ru/page/3 и т. д., но лучше проверить."

    Вы предлагаете таким образом: Disallow: /page/*

    А у меня Disallow: /page/, то есть без звездочки в конце. Это тоже правильно?

    • Да, можно и без звездочки.

Внимание: все отзывы проходят модерацию.

Топ комментаторов
АватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватар
Самые комментируемые записи
Самые читаемые записи

Для того чтобы снять блок и увидеть скрытый контент или ссылку на закачку, подпишитесь на обновления блога.

В каждом письме публикуется код разблокировки.

Пользуйтесь кодом только из последних, пришедших вам на Email, писем. Закрыть »

Постов 195
Отзывов 4349