Правильный robots.txt для WordPress
Есть у движка wordpress одна проблема в техническом плане. Заключается она в дублирование контента и мусорных страниц. Эта штука сулит очень большие проблемы с поисковыми системами, особенно если очень увлекаться тегами (метками).
В самом плохом варианте сайт может попасть под фильтр Яндекса АГС (бан, когда в индексе остается 10 или менее страниц), и в дополнительный индекс Гугла. Объяснять, что такое АГС и дополнительный индекс я сейчас не буду, эта тема отдельного разговора, а вот как решить проблему с дублями я расскажу.
Во первых проверьте, что сейчас проиндексировано Яндексом по вашему сайту: способ 1,способ 2. Тут задача убедиться, есть ли дубли контента и другие мусорные данные. На этом этапе мы осознаем проблему.
ВНИМАНИЕ!Ниже я привожу такой роботс, который блокирует все возможные страницы с дублирующем контентом на wordpress.
Если ваш сайт уже старый и раскрученный, то это может повлиять не очень благоприятно — из индекса могут вылететь страницы на которые идет трафик с поисковиков и на которых содержится дублирующая информация!
В этом случае, я рекомендую использовать более универсальный роботс, он делает только самое необходимое (не подходит для сайтов с url по умолчанию, вида: http://ваш_сайт.ru/?p=123).
А сама проблема решается очень просто, нужно создать правильный файл robots.txt. Для этого нужно скопировать содержание, указанное ниже, в блокнот, отредактировать его (заменить ваш_сайт.ru на нужный url-адрес) и сохранить с названием robots.txt.
Затем этот сохраненный файл нужно закачать по фтп в корень сайта – там, где лежат папочки: wp-admin, wp-content, wp-includes и файлик wp-config.php. Вот содержание (что оно обозначает смотрите в видео выше):
User-Agent: *
Allow: /wp-content/uploads/
Disallow: /wp-
Disallow: /cgi-bin
Disallow: /author/
Disallow: /xmlrpc.php
Disallow: /tag/
Disallow: /category/
Disallow: /page/
Disallow: /archive/
Disallow: /*?tag=
Disallow: /*?cat=
Disallow: /*?paged=
Disallow: /*?m=
Disallow: /*feed
Disallow: /*comments
Disallow: /*trackback
Disallow: /*comment-page
Disallow: /*cpage=
Disallow: /*?s=
Disallow: /*&s=
Crawl-delay: 3User-agent: Yandex
Allow: /wp-content/uploads/
Disallow: /wp-
Disallow: /cgi-bin
Disallow: /author/
Disallow: /xmlrpc.php
Disallow: /tag/
Disallow: /category/
Disallow: /page/
Disallow: /archive/
Disallow: /*?tag=
Disallow: /*?cat=
Disallow: /*?paged=
Disallow: /*?m=
Disallow: /*feed
Disallow: /*comments
Disallow: /*trackback
Disallow: /*comment-page
Disallow: /*cpage=
Disallow: /*?s=
Disallow: /*&s=
Crawl-delay: 3
Host: ваш_сайт.ruSitemap: http://ваш_сайт.ru/sitemap.xml
Замените ваш сайт.ru – на URL адрес нужного сайта, например nokak2.ru!
Если у вас нету файла sitemap.xml — то советую его создать, но это не обязательно. Можно убрать последнюю строку и не париться с этим.
Затем зайти сюда: http://webmaster.yandex.ru/robots.xml, ввести адрес своего сайта (имя хоста) и проверить правильно ли все вы сделали. Просто убедиться в наличие этого файла у вас на сайте и его правильное понимание Яндексом — используемые секции 24-46 и 48-48 (т.е. Яндекс будет руководствоваться строками с 24 по 46 и 48).
Я старался сделать этот robots максимально универсальным и он подойдет как к проектам с ЧПУ, так и к базовым url-адресам, которые стоят по умолчанию. Но есть одна оговорка. Вот этот блок, нужно использовать ОЧЕНЬ ВНИМАТЕЛЬНО и аккуратно!:
Disallow: /tag/
Disallow: /category/
Disallow: /page/
Disallow: /archive/
Disallow: /*?tag=
Disallow: /*?cat=
Disallow: /*?paged=
Disallow: /*?m=
Дело в том, что в нем мы закрываем дубли (тэги, списки категорий и архивов, а также постраничную навигацию. Первые 4 строки для сайтов с ЧПУ остальные 4 для сайтов по умолчанию (/?p=123
). Проблема может заключаться в том, что при использование не стандартных ЧПУ, вы можете выводи свои статьи через archive или category, например адрес статьи — site.ru/archives/123
.
А это означает, что стати НЕ БУДУТ ИНДЕКСИРОВАТЬСЯ, так как в robots.txt прописан запрет на индексацию archive и category! Будьте внимательны!
Узнать подробнее, что обозначают все эти директивы в файле robots.txt можно в разделе помощь, на Яндексе.
P.S.: Для любознательных, мы блок:
Disallow: /wp-login.phpDisallow: /wp-register.php
Disallow: /wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content
Заменяем на
Disallow: /wp-
Этим мы закрываем все от индексации начинающееся с wp-. Т.е. все что указано выше + многое другое.
А теперь о robots.txt от Яндекса:
Для чего нам это нужно?
1. Скрытие информации от поисковых систем.
2. Уменьшение числа внешних ссылок с сайта.
3. Полезность, меньше «говна» в индексе.
Для запрета индексации части текста или ссылок в ПС Яндекс используется тег noindex. Его полностью игнорируют все поисковые системы кроме Рамблера. В стандартах HTML нет этого тега, поэтому многие валидаторы проверок кода будут ругаться на него, поэтому не пугайтесь, ничего страшного в этом нет.
И так когда нам нужно использовать noindex
1. Закрывайте внешние ссылки, если не хотите чтобы они были учтены ПС и Биржами ссылок
2. Закрывайте контент который присутствует на всех страницах, это негативно влияет на ваше присутствие в ПС.
3. Закрывайте служебную информацию или то что не должно попадать в индекс.
4. Закрывайте коды счетчиков (не путать с кодами бирж ссылок!)
Для гугла не существует аналогичного тега, но есть атрибут ссылки nofollow, который позволяет не учитывать нужные вам внешние ссылки.
Ссылка с этим атрибутом будет выглядеть так:
Тег нужно использовать в обязательном порядке если вы не хотите, чтобы ваши ссылки были учтены ПС и Биржами ссылок
Атрибут nofollow можно использовать robots.txt
Для того чтобы ссылка не учитывалась обоими поисковками, нужно использовать слудующий код:
Для массового запрета индексации следует использовать robots.txt
Если в корне вашего сайта нет файла robots.txt создавайте его.
Файл robots.txt был задуман чтобы можно было сказать роботу ПС, какие страницы сайта не следует индексировать.
robots.txt состоит из одной или более записей, разделенных одной или более пустых линий. Каждая запись имеет формат:
1 | <имя_поля>:<необязательные_пробелы><значение><необязательные_пробелы>необязательные_пробелы>значение>необязательные_пробелы>имя_поля> |
Значение имени поля чувствительно к регистру, что очень не маловажно!
В файл robots.txt можно включать комментарии в виде символа # это означает, что остаток строки — это комментарий и не анализируется поисковым роботом.
Более подробно про robots.txt можно почитать в хелпе Яндекса, а так же проверить правльность их же анализатором
Присутствие на сайте пустого файла robots.txt не имеет какого-либо особого значения, он рассматривается как отсутсвующий.
Обязательно используйте robots.txt на форумах и больших порталах для массового запрета индексации, для увеличения релевантных страниц в индексе ПС, что хорошо влияет на картину в целом.
Пример robots.txt для моего форума IPB:
1 | User-agent: * |
На данный момент яндекс в панели вебмастера пишет для этого сайта, что: «Документов запрещенных в файле robots.txt? 19322
Скажем нет не нужной инфе
