» » » Делаем правильный файл Robots.txt для WordPress

Делаем правильный файл Robots.txt для WordPress

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

Правильный robots.txt для wordpress

Содержание:

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

Зачем нужен файл robots.txt

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

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

Примерами таких служебных зон являются – админка сайта, папки с темами оформления, скриптами и т.д.

Вторая функция этого файла – это избавление поисковой выдачи от дублированного контента. Если говорить о WordPress, то, часто, мы можем по разным URL находить одни и те же статьи или их части. Допустим, анонсы статей в разделах с архивами и рубриках идентичны друг другу (только комбинации разные), а страница автора обычного блога на 100% копирует весь контент.

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

Если у вас нет правильно настроенного файла Robots.txt, то возможны 2 варианта:

1. В выдачу попадет каша из всевозможных страниц с сомнительной релевантностью и низкой уникальностью.

2. Поисковик посчитает кашей весь ваш сайт и наложит на него санкции, удалив из выдачи весь сайт или отдельные его части.

Есть у него еще пара функций, о них я расскажу по ходу.

Принцип работы файла robots

Работа файла строится всего на 3-х элементах:

  • Выбор поискового робота
  • Запрет на индексацию разделов
  • Разрешение индексации разделов

1. Как указать поискового робота

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

User-agent: * # для всех роботов
User-agent: имя робота # для конкретного робота

После символа «#» пишутся комментарии, в обработке они не участвуют.

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

Основные роботы, на которые стоит ориентироваться – это yandex и googlebot, они представляют соответствующие поисковики.

2. Как запретить индексацию в Robots.txt

Запрет индексации осуществляется в помощью директивы Disallow. После нее прописывается раздел или элемент сайта, который не должен попадать в поиск. Указывать можно как конкретные папки и документы, так и разделы с определенными признаками.

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

Disallow: #запретов нет

Для запрета файлов указываем путь относительного домена.

Disallow: /zapretniy.php #запрет к индексации файла zapretniy.php

Запрет разделов осуществляется аналогичным образом.

Disallow: /razdel-sajta #запрет к индексации всех страниц, начинающихся с /razdel-sajta

Если нам нужно запретить разные разделы и страницы, содержащие одинаковые признаки, то используем символ «*». Звездочка означает, что на ее месте могут быть любые символы (любые разделы, любой степени вложенности).

Disallow: */*test #будут закрыты все страницы, в адресе которых содержится test

Обратите внимание, что на конце правила звездочка не ставится, считается, что она там есть всегда. Отменить ее можно с помощью знака «$»

Disallow: */*test$ #запрет к индексации всех страниц, оканчивающихся на test

Выражения можно комбинировать, например:

Disallow: /test/*.pdf$ #закрывает все pdf файлы в разделе /test/ и его подразделах.

3. Как разрешить индексацию в Robots.txt

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

Для открытия служит директива Allow. К ней применяются те же самые атрибуты. Пример работы может выглядеть вот так:

User-agent: * # для всех роботов
Disallow: /razdel-sajta #запрет к индексации всех страниц, начинающихся с /razdel-sajta
Allow: *.pdf$ #разрешает индексировать pdf файлы, даже в разделе /razdel-sajta

Теорию мы изучили, переходим к практике.

Как создать и проверить Robots.txt

Проверить, что содержит ваш файл на данный момент можно в сервисе Яндекса – Проверка Robots.txt. Введете там адрес своего сайта, и он покажет всю информацию.

Kак создать и проверить robots.txt

Если у вас такого файла нет, то необходимо срочного его создать. Открываете текстовый редактор (блокнот, notepad++, akelpad и т.д.), создаете файл с названием robots, заполняете его нужными директивами и сохраняете с txt расширением (ниже я расскажу, как выглядит правильный robots.txt для WordPress).

Дальше, помещаем файл в корневую папку вашего сайта (рядом с index.php) с помощью файлового менеджера вашего хостинга или ftp клиента, например, filezilla (как пользоваться).

Если у вас WordPress и установлен All in One SEO Pack, то в нем все делается прямо из админки, в этой статье я рассказывал как.

Robots.txt для WordPress

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

Мой файл 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
Allow: /wp-content/themes/папка_вашей_темы/
Allow: /wp-content/plugins/
Allow: /wp-includes/js/

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

User-agent: YandexImages
Allow: /wp-content/uploads/

host: biznessystem.ru

Sitemap: https://biznessystem.ru/sitemap.xml

Первый блок действует для всех роботов, так как в строке User-agent стоит «*». Со 2 по 9 строки закрывают служебные разделы самого вордпресс. 10 – удаляет из индекса страницы RSS ленты. 11 – закрывает от индексации авторские страницы.

По последним требованиям поисковиков, необходимо открыть доступ к стилям и скриптам. Для этих целей в 12, 13 и 14 строках прописываем разрешение на индексирование папки с шаблоном сайта, плагинами и Java скриптами.

Дальше у меня идет 2 блока, открывающих доступ к папке с картинками роботам YandexImages и Googlebot-Image. Можно их не выделять отдельно, а разрешающую директиву для папки с картинками перенести выше на 15 строку, чтобы все роботы имели доступ к изображениям сайта.

Если бы я не использовал All-in-One-Seo-Pack, то добавил бы правило, закрывающее архивы (Disallow: */20) и метки (Disallow: */tag).

При использовании стандартного поиска по сайту от WordPress, стоит поставить директиву, закрывающую страницы поиска (Disallow: *?s=). А лучше, настройте Яндекс поиск по сайту, как это сделано на моем блоге.

Обратите внимание на 2 правила:

1. Все директивы для одного робота идут подряд без пропуска строк.

2. Блоки для разных роботов обязательно разделяются пустой строкой.

В самом конце есть директивы, которые мы ранее не рассматривали – это host и sitemap. Обе эти директивы называют межсекционными (можно ставить вне блоков).

Host – указывает главное зеркало ресурса (с 2018 года отменена и больше не используется). Обязательно стоит указать какой домен является главным для вашего сайта – с www или без www. Если у сайта есть еще зеркала, то в их файлах тоже нужно прописать главное. Данную директиву понимает только Яндекс.

Sitemap – это директива, в которой прописывается путь к XML карте вашего сайта. Ее понимают и Гугл и Яндекс.

Дополнения и заблуждения

1. Некоторые вебмастера делают отдельный блок для Яндекса, полностью дублируя общий и добавляя директиву host. Якобы, иначе yandex может не понять. Это лишнее. Мой файл robots.txt известен поисковику давно, и он в нем прекрасно ориентируется, полностью отрабатывая все указания.

2. Можно заменить несколько строк, начинающихся с wp- одной директивой Disallow: /wp-, я не стал такого делать, так как боюсь – вдруг у меня есть статьи, начинающиеся с wp-, если вы уверены, что ваш блог такого не содержит, смело сокращайте код.

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

4. Гугл рекомендует открывать доступ своим ботам к файлам темы оформления и скриптам сайта, пугая вебмастеров возможными санкциями за несоблюдение этого правила. Я провел эксперимент, где оценивал, насколько сильно влияет это требование на позиции сайта в поиске – подробности и результаты эксперимента тут.

Резюме

Правильный файл Robots.txt для WordPress является почти шаблонным документом и его вид одинаков для 99% проектов, созданных на этом движке. Максимум, что требуется для вебмастера – это внести индивидуальные правила для используемого шаблона.

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
(17 голосов, в среднем: 4.9 из 5)

31 комментарий на «“Делаем правильный файл Robots.txt для WordPress”»

  1. Андрей Владимирович:

    Спасибо за статью.
    Уже давно пытаюсь исправить robots.txt у себя на сайте busparty.ru ? там почему то не видит яндекс посты, Гугл все видит, Яндекс нет.. Сейчас попробую по вашему совету заменить свой

    Ответить
    • Дмитрий Жилин:

      А вы уверены, что Яндекс не видит посты именно из-за этого файла?

      Ответить
    • Дмитрий Жилин:

      Посмотрел внимательнее ваш сайт – он под фильтром АГС, оказывается. Надо разбираться в причинах и проводить серьезную работу.
      Не попасть под фильтр гораздо легче, чем вывести сайт из под него.

      Ответить
  2. Максим Козлов:

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

    Ответить
    • Дмитрий Жилин:

      Если будут вопросы, задавайте, с удовольствием помогу решить.

      Ответить
  3. валера:

    спасибо!

    Ответить
  4. Артем:

    Спасибо автору за статью с пошаговой инструкцией. Ваши советы мне очень помогли. Доступней не бывает.

    Ответить
  5. Егор:

    А как вам мой Robots.txt?

    User-agent: *
    Allow: /wp-content/themes/frontend
    Disallow: /wp-includes
    Disallow: /wp-feed
    Disallow: /wp-content/plugins
    Disallow: /wp-content/cache
    Disallow: /wp-content/themes
    Host: http: //filwebs.ru
    Sitemap: http: //filwebs.ru/sitemap.xml

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

    User-agent: YandexImages
    Allow: /wp-content/uploads/

    frontend – это папка с активной темой.

    Ответить
    • Дмитрий Жилин:

      А с какой целью вы открываете доступ роботам к теме оформления сайта?

      Ответить
  6. Егор:

    Здравствуйте. В Google Mobile-Friendly Test рекомендуют. Да и в кабинете веб-мастера можно посмотреть как видит бот сайт. Да и вообще, зачем ее закрывать?

    Ответить
    • Дмитрий Жилин:

      В рекомендация Гугла есть такое, согласен с вами.
      Честно говоря, я не придавал значения, так как сомневаюсь, что стандартные вордпресовские скрипты и CSS стили влияют на ранжирование сайта в поиске.
      А дополнительные скрипты на сайт я закидывал в отдельную папку, которая открыта для роботов.
      Попробую открыть доступ – посмотрим, как это скажется на позициях (повод для нового эксперимента – через 3 месяца посмотрим на результат).

      Ответить
      • Дмитрий Жилин:

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

        Ответить
  7. Егор:

    У меня еще закрыты от индексации служебные страницы, только в файле functions

    Ответить
  8. Егор:

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

    Ответить
    • Дмитрий Жилин:

      Посмотрим, станет или нет.
      Я открыл сейчас доступ к файлам темы, плагинам и скриптам wordpress – через 3 месяца опубликую результат эксперимента (как изменятся позиции в выдаче).

      Ответить
  9. Артем:

    добрый день!
    Подскажите пожалуйста как правильно настроить и куда разместить Robots.txt в программе NVU.

    Ответить
    • Дмитрий Жилин:

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

      Ответить
  10. Артем:

    Добрый день!
    Дмитрий подскажите пожалуйста, нужен ли robots.txt для одно страничного сайта!?

    Ответить
    • Дмитрий Жилин:

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

      Ответить
  11. Егор:

    Здравствуйте, согласен. Robots не помешает для указания зеркала.

    Ответить
  12. Гость:

    Здравствуйте! скажите пожалуйста а почему вы вводите людей в заблуждение? ваш robots.txt выглядит несколько по другому там не 21 строка а 31, для чего писать что ваш файл выглядит именно так?

    Ответить
    • Дмитрий Жилин:

      Жизнь не стоит на месте, пост писался давно.
      Но это мелочи. Приведенный здесь robots полностью соответствует всем правилам и не вводит в заблуждение никого, кто внимательно читает назначение всех строк.
      Если вы обратите внимание на различия, то увидите, что они несущественны:
      – я убрал отдельные правила для картиночных ботов Яндекса и Гугл и объединил их с общим блоком для всех роботов – как лучше я пока не знаю, правильно и так и так.
      – по недавней просьбе Google, был открыт доступ к папкам темы оформления и скриптам, никаких изменений в индексации и позициях сайта замечено не было, поэтому, я не знаю стоит ли рекомендовать их открытие всем.
      – у меня стоят запретные правила для некоторых роботов не принадлежащих Яндексу или Google. Я посчитал, что мой сайт им посещать не нужно, максимум на что это влияет – на нагрузку хостинга, опять же, правила не обязательные и без необходимости их ставить я не рекомендую.

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

      Ответить
    • Надежда Суптеля:

      У меня вообще 16 строк + две урл блога = 18. Купила умный плагин и он сам сгенерировал роботс и многое спрятал без мороки. Я всего лишь добавила несколько рубрик, которые у меня под нофоллов и ноиндекс. Но они почему – то индексируются Яшей. Тоже эксперимент длиною… пока не скажу, потом расскажу.

      Ответить
  13. Егор:

    Эксперимент идет. Так-то гость. Все на себе 🙂

    Ответить
  14. Павел:

    У меня проблема немного другая. Два года стоит файл роботс, взял по рекомендации, но наверное буду менять как у Вас. Дня 4 назад Яндекс написал не может найти файл роботс, и тут же в графе загружено в панели вебмастера, появляются куча страниц. Было гдето 200 сейчас 444. При том что в поиске 107. Отправил на повторную проверку.
    У Гугла все норм.
    Что может быть?

    Ответить
    • Дмитрий Жилин:

      Проверьте доступность файла через панель Яндекс Вебмастера. Если отдает код 200, то в поддержку Яндекса напишите или просто подождите следующего апдейта, может быть в момент прихода робота Яндекса в прошлый раз был сбой.

      Ответить
  15. seoonly.ru:

    Спасибо! Помогло)) теперь на всех сайтах хоть нормальные файлы сделаю.

    Ответить
  16. Ната:

    Дмитрий, прокомментируйте, пожалуйста
    # If the Joomla site is installed within a folder such as at
    # e.g. example.com/joomla/ the robots.txt file MUST be
    # moved to the site root at e.g. example.com/robots.txt
    # AND the joomla folder name MUST be prefixed to the disallowed
    # path, e.g. the Disallow rule for the /administrator/ folder
    # MUST be changed to read Disallow: /joomla/administrator/
    #
    # For more information about the robots.txt standard, see:
    # robotstxt.org/orig.html
    #
    # For syntax checking, see:
    # sxw.org.uk/computing/robots/check.html

    User-agent: *
    Disallow: /administrator/
    Disallow: /cache/
    Disallow: /cli/
    Disallow: /components/
    Disallow: /images/
    Disallow: /includes/
    Disallow: /installation/
    Disallow: /language/
    Disallow: /libraries/
    Disallow: /logs/
    Disallow: /media/
    Disallow: /modules/
    Disallow: /plugins/
    Disallow: /templates/
    Disallow: /tmp/

    Ответить
    • Дмитрий Жилин:

      А что тут комментировать? Пишут, что если у вас джумла установлена не в корневой папке, то файл robots нужно переместить в корневую. А дальше рекомендуемые к закрытию директории идут, так сказать типовой файл дан.

      Ответить
  17. Линар:

    Дмитрий, Добрый вечер!
    Нужна помощь в настройке robots.txt сможете мне помочь?

    Ответить
    • Дмитрий:

      Это зависит от того, что за сайт – нужно знать его структуру. Для WordPress файл на 99% стандартен, для других популярных CMS тоже можете найти шаблонные варианты в сети.

      Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *