июня
Правильный robots.txt для WordPress. Поисковая оптимизация
Работа с файлом robots.txt для WordPress, правильная организация и использование. Поисковая оптимизация блога с помощью robots.txt.
С целью поисковой оптимизации своего блога начал рыться в корне и вспомнил, что есть так называемый робот, который помогает при работе с поисковиками.
Robots.txt (правильно robots.txt) – файл настройки индексации блога WordPress, который говорит поисковику, какие каталоги, ссылки и страницы не нужно индексировать. Если такого файла нет, то индексируется и записывается в базу всё подряд с ресурса. Первый вопрос, который возникает: зачем это нужно? Чтобы ответить на него нужно обратиться к структуре блога. Каждый новый пост имеет свою рубрику/подрубрику и не одну, теги или метки (ярлыки). Т.е. одна статья имеет несколько одинаковых страниц, но с той лишь разницей, что к ней прикреплены разные рубрики или метки. Это также отвечает на вопросы: Нужно ли убирать с индексации рубрики и метки?
Когда только создавал блог, особо не обращал на это внимание, т.к. до конца всё не понимал и делал по аналогии. Мой робот выглядел так:
Disallow – запрет индексации.
User-agent: * - основные правила
Disallow: /cgi-bin – скриптов
Disallow: /wp-admin – админки
Disallow: /wp-includes – wp-includes
Disallow: /wp-content/plugins – плагинов
Disallow: /wp-content/cache – кэша
Disallow: /wp-content/themes – тем
Disallow: /trackback – трэкбеков
Disallow: /feed – фида (RSS ленты)
Disallow: /comments – комментариев
Disallow: /category/*/* – категорий (рубрик)Типы адресов для запрета:
Disallow: */trackback
Disallow: */feed
Disallow: */comments
Disallow: /*?*
Disallow: /*?Allow: /wp-content/uploads - разрешено индексирование папки uploads (обычно сюда заливаются картинки)
# Google Image - правила для Google Image
User-agent: Googlebot-Image
Disallow:
Allow: /*
# Google AdSense - правила для Google AdSense
User-agent: Mediapartners-Google*
Disallow:
Allow: /*
# Internet Archiver Wayback Machine - правила для интернет архива Wayback Machine
User-agent: ia_archiver
Disallow: /
# digg mirror - правила для duggmirror.com
User-agent: duggmirror
Disallow: /Sitemap: http://compass-blogger.com.ua/sitemap.xml - карта сайта
User-agent: Yandex – правила для Яндекса
Crawl-delay: 5 – таймаут индексирования страниц блога Яндексом (0.5, 1, 2, и т.д.) Чем меньше, тем быстрее происходит обход сайта.
Disallow: /tag – теги (метки, ярлыки)Disallow: /page/- страницы
Теперь о том, что можно подправить:
- Не запрещена индексация тегов в Google. Чтобы не дублировать записи можно прописать Disallow: /tag в User-agent: *.
- Запрещена индексация комментариев Disallow: /comments. Если на вашем блоге грамотные комментарии и несут полезную информацию, так почему не дать пользователю обратиться к ним через поиск? Очень часто при поиске нужной информации я нахожу её не в основной статье, а в комментариях. Чтобы не происходила индексация ссылок в комментариях используется плагин WP-Noindex.
Заметил также, что ещё многие блоггеры добавляют:
К основным правилам:
Disallow: /wp-login.php - вход в админ панель блога
Disallow: /wp-register.php - регистрация на блоге
К типам адресов для запрета:
Disallow: /?feed=
Disallow: /?s=Отдельные правила для Яндекса:
User-agent: Yandex
Disallow: /cgi-bin/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /wp-includes/
Disallow: /xmlrpc.php
Disallow: /wp-admin
Disallow: /wp-content/plugins
Disallow: /wp-content/themes
Disallow: /tag/
Disallow: /page/
Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Disallow: /*?*
Disallow: /*?
Host: compass-blogger.com.ua - исключение дублей с www.compass-blogger.com.ua
При работе с файлом robots.txt также нужно пользоваться возможностями, которые предоставляют поисковики Yandex и Google. Это Яндекс Вебмастер (webmaster.yandex.ru) и Инструменты для вебмастера (www.google.com/webmasters/tools). Предварительно необходимо добавить свой сайт, его карту sitemap.xml и robots.txt. Следует обратить внимание на неработающие ссылки на блоге, которые также здесь можно редактировать. Используя статистику посещений, запросов, рейтингов и других возможностей можно легко управлять своим сайтом и выводить его на хорошие позиции.
Готовый robots.txt для WordPress
User-agent: * Disallow: /cgi-bin/ Disallow: /wp-admin Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /wp-includes/ Disallow: /xmlrpc.php Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /page/ Disallow: /trackback/ Disallow: /feed/ Disallow: /tag/ Disallow: */trackback/ Disallow: */feed/ Disallow: /?feed= Disallow: /?s= Disallow: /*?* Disallow: /*? User-agent: Yandex Disallow: /cgi-bin/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /wp-includes/ Disallow: /xmlrpc.php Disallow: /wp-admin Disallow: /wp-content/plugins Disallow: /wp-content/themes Disallow: /page/ Disallow: /tag/ Disallow: /trackback/ Disallow: /feed/ Disallow: */trackback/ Disallow: */feed/ Disallow: /?feed= Disallow: /?s= Disallow: /*?* Disallow: /*? Host: ВАШ_ДОМЕН Crawl-delay: 5 Sitemap: http://ВАШ_ДОМЕН/sitemap.xml
Сделать файл robots.txt легко, достаточно создать текстовый документ, добавить в него нужные правила и залить в корень сайта. Нужно помнить, что по умолчанию этого файла нет в Wordpress и поэтому надо заранее позаботиться о его создании.













Хочу заметить, что комментарии для dofollow-блогов нужно открывать. Да и вообще зачем дополнительный контент прятать от индексации?
И еще Google ведет себя достаточно странно, во многих случаях, он просто игнорирует robots.txt и индексирует то, что его не просят.
Den хочу сделать замечаньеце маленькое Allow совсем не во всех роботах работает, лучше писать что запрещено(Disallow), а что разрешено боты и сами разберутся.
Да, кстати, забыл об этом написать. По идее Allow вообще не нужен, ведь в robots.txt пишутся правила только для того, что запрещено для индексации, а всё остальное разрешено. Спасибо за замечание, а то упустил этот факт. После этой статьи ещё больше стал изучать robots.txt и подметил, что некоторые блоггеры рекомендуют разрешать теги для индексации с целью быстрой раскрутки. Вообще как-то всё странно с этим файлом, кто-то оставляет теги, но закрывает страницы (page) и рубрики (category), кто-то делает наоборот. При чём для Яндекса ещё не встретил, чтобы закрывали рубрики, а для остальных многие разрешают теги.
Яндекс себя ведет по человечески, не лезет куда не просят:), а Гугл – редиска, проиндексировал все, что ему запретили, пришлось страницу с обратными ссылками(после прогона по каталогам) удалять.
Спасибо за статью. Она помогла мне понять зачем и как создать файл robots.txt, поскольку с помощью другого плагина WordPress я заметил что Гугл индексирует таки не нужные страницы, надеюсь это исправить. Еще раз спасибо.
Очень полезная информация, теперь я расскажу своим друзьям нужен robots.txt и как с ним работать. спасибо.
Спасибо, составил и себе такой роботс, раньше вообще без него было
Спасибо.
Что ж, пожалуй один из самых информативных материалов по robots.txt
Применил все советы о которых говорится, посмотрим как отреагируют поисковики.
Рад вам помочь
“Allow” не входит в число разрешённых директив.
В чём великий смысл прятать блог от Wayback Machine? В чём вред того, что там будут появляться копии блога с полугодовым отставанием?
Смысл в том, чтобы скрыть от архива информацию о своём сайте или личных данных в сети. Например, минус такого архива в том, что даже после удаления сайта, в архиве он продолжает какое-то время существовать с полноценным контентом. Конечно, для многих это не столь важно. В моём случае, я использую данную опцию в robots.txt только потому что на моём блоге можно найти информацию обо мне и если я захочу удалить блог, продать или отдать при этом удалив информацию связанную со мной (мало ли что может случится…), мне не нужно, чтобы его копия сохранялась ещё где-то в сети.
Спасибо за очень понятное изложение.
Всегда пожалуйста
А разве вот это:
Disallow: /page/
Disallow: /trackback/
Disallow: /feed/
Не так должно записываться?
Disallow: /wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Связка такая:
Disallow: /page/
Disallow: /trackback/
Disallow: */trackback/
Disallow: /feed/
Disallow: */feed/
Disallow: /?feed=
Disallow: /comments
Disallow: */comments
Можно заметить, что добавляют также:
Disallow: /wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Но это скорее всего из-за того, что сомневаются в полноценном срабатывании вышеперечисленных запретов или же имеют такую структуру формированиях ленты комментариев, фида и трекбеков. На самом деле каталогов wp-trackback, wp-feed, wp-comments или формирующихся таких ссылок я не замечал. А в самом WordPress есть файлы wp-trackback.php, wp-feed.php, wp-comments-post.php, wp-commentsrss2.php.
Тогда правильнее уже писать:
Disallow: /wp-trackback.php
Disallow: /wp-feed.php
Disallow: /wp-comments-post.php
Disallow: /wp-commentsrss2.php
Но я бы не стал так делать, т.к. это всё сильно усложняет файл robots.txt. Проще использовать те настройки, которые я предложил в статье. Тем более, что такой robots у меня уже больше года и по идее он работает правильно. Единственное, что я не использую это запрет индексации комментариев.
а точно надо Disallow: /page/ добавлять?
Не обязательно, это делается в том случае если вы не хотите дублировать контент в поисковой выдаче. Page – это страница, на которой можно найти несколько анонсов статей как на главной (в моём случае 5), это можно заметить используя навигационное меню по страницам внизу блога (на главной или поиск по меткам и категориям), т.е. page – это не статья. Тоже самое делается с метками и категориями. Но есть разные варианты и зависит от структуры блога. Например, если вы не делаете анонсы (т.е. у вас нет перехода “Читать далее” или подобного), то выводятся не анонсы, а полные статьи, т.е. опять же происходит дублирование контента в выдаче. Поэтому лучше скрывать от индексации метки, страницы и категории.
Есть ещё одно “но”. Последнее время поисковики стали очень умными и даже если в файле robots.txt не прописан запрет на индексацию меток или категорий, он сам закрывает их.
В сторону того чем может быть полезна индексация страниц меток или категорий можно заметить несколько нюансов: бывает так, что страница метки попадает в индекс быстрее основной статьи и таким образом затягивает основную статью, т.е. происходит быстрая индексация. Кроме этого раньше когда ещё полностью индексировались страницы меток, у некоторых блоггеров по таким страницам был трафик с поиска. Но опять же это было год назад, когда индексировалось всё подряд, сейчас в этом смысла нет, а для ускорения индексации используются сторонние сервисы, типа твиттера, анонсы на форумах, пинг и т.д.
Очень полезная информация спасибо
А разве при использовании подрубрик не возникает дублирования контента? То есть ведь получается, что один и тот же пост доступен по двум разным местам:
сайт.ру/рубрика/подрубрика/название поста
и
сайт.ру/рубрика/название поста
Или я не прав??
Основной вопрос: Как сделать, чтобы пост выводился в двух разных рубриках и не дублировался?
Ещё один вопрос:
А разве для гугла не нужно тоже вписывать: Disallow: /page/ ?
Простой, в вордпрессе если вы выбрали для одной статьи несколько подрубрик, то адрес будет один, но статья будет доступна со всех указанных подрубрик. Поэтому проиндексируется только один адрес, дублирования не будет. Тоже самое и с рубриками.
Например, у меня есть статья в рубрике “Хостинг” . Также она есть в рубрике , но как видно адрес один и тот же, т.е. при выборе из двух рубрик в ЧПУ отдаётся приоритет только одной.
Но на самом блоге статья также доступна по адресу хотя и не выводится.
Таким образом Яндекс проиндексировал только первый вариант xosting/hosting.html, а Google – первый и второй, но как xosting/hosting.html. Поэтому контент не дублируется.
Для Гугла Disallow: /page/ также нужно прописать. У меня в роботс прописано, а тут видимо забыл указать.
То есть если для статьи выбирать несколько подрубрик, то дублирование не будет? Так как по не понятным мне законом поисковики будут индексировать только из одной рубрики статью. Я вас правильно понял?
А если статья находится в подрубики и в родительской рубрики этой подрубрики, то такое будет считаться дублем?
На блоге формируется только один адрес, поисковики видят только один URL. Посмотрите на свою карту сайта, в разных рубриках если есть одинаковые статьи, то URL-ы у этих статей идентичны. Поисковику больше некуда идти, он видет только одну статью (один адрес), а рубрики и подрубрики, сколько бы их ни было выступают просто как внутренняя перелинковка.
Если вы используете и рубрику и подрубрику, то ссылка сформируется так: адрес блога/рубрика/название статьи (если ЧПУ такое /%category%/%postname%.html), т.е. такого не будет чтобы получилось две статьи: адрес блога/рубрика/название статьи + адрес блога/подрубрика/название статьи, будет только адрес блога/рубрика/название статьи.
Правда ко всему этому нужно добавить канонические адреса, т.е. Canonical URLs. Моё упущение, поэтому всё так не ясно. Всё вышеперечисленное будет происходить при условии, что вы поставите галочку в своём плагине All in One SEO Pack, напротив Canonical URLs.
Т.е. именно из-за этой функции будет отдаваться приоритет какому-то одному адресу.
То есть в этом вопросе без установки плагинна All in One SEO Pack не обойтись?)) Понимаю, что плагин полезный и возможно даже необходимый. Но пока не дошли до него руки, чтоб с ним разбираться)
А вот ещё в robots пишут такое:
Sitemap: http:// сайт.ру/sitemap.xml
Как создать карту именно в xml? У меня просто карта в адресной строке выводится просто сайт.ру/sitemap без расширения xml. Или так всё и должно быть?
Плагин All in One SEO Pack в данном случае с каноническими адресами действует так: на дублирующей странице в коде внутри тега head, прописывается < link rel="canonical" href="адрес приоритетной страницы" />. Т.е. на странице в коде можно увидеть < link rel="canonical" href="http://compass-blogger.com.ua/xosting/hosting.html" />.
Если вы не хотите пользоваться плагином, то вам прийдётся прописывать всё вручную. Или же использовать скрипт, что и является плагином для вордпресса. Также есть плагин Canonical URL’s, который в полуавтоматическом режиме добавляет тег Canonical на ваше усмотрение, т.е. в данном случае вы сами задаёте один приоритетный адрес (это не происходит автоматически как с All in One SEO Pack).
На мой взгляд проще всего использовать плагин All in One SEO Pack, настроить его не сложно и при этом он очень помогает в продвижении вордпресс блогов. Тем более, что настройка осуществляется один раз.
По поводу sitemap, есть две карты сайта:
1.
2.
Первая нужна исключительно для улучшения индексации в рамках блога.
Вторая нужна для улучшения индексации со стороны поискового робота. Т.е. именно вторую карту мы добавляем в сервисы поисковых систем.
Первая карта делается с помощью плагина Dagon Design Sitemap Generator. Вторая с помощью Google XML Sitemaps. Для второго варианта есть аналоги-плагины, аналоги-сервисы.
Например, сервисы, которые создают карту сайта в формате .xml:
sitemapspal.com
htmlweb.ru
и др.
Благодарю вас за ответы на вопросы.
А плагин Google XML Sitemaps должен быть всегда включен? Или после того как он создаст карту его можно отключить затем удалить?
Можно удалить в том случае если у вас блог статический, т.е. вы не добавляете новые статьи или страницы. Если блог динамический, то плагин этот файл всегда обновляет. Только если удалили, не забудьте проверить в корне сайта наличие файла sitemap.xml