Карта сайта

Карта сайта в формате xml является очень важным и фактически обязательным атрибутом любого web проекта, но многие этого либо не знают, либо не придают Sitemap xml большого значения.

Карта сайта

Сразу давайте расставим все точки над «i» и попробуем отделить два понятия — карту сайта в формате xml и называющуюся точно так же карту сайта в формате Html. Второй вариант представляет из себя обычный список всех материалов web ресурса, который будет доступен любому желающему по нажатию на соответствующий пункт меню. Такой вариант карты сайта тоже полезен и способствует ускорению и улучшению индексации вашего ресурса поисковыми системами (в рунете в расчет стоит брать только Яндекс и Google).

Карта сайта sitemap xml — а оно мне надо?

Но основным инструментом, предназначенным для прямого указания поисковым системам тех страниц ресурса, которые нужно будет обязательно проиндексировать — это карта сайта под названием Sitemap xml, которая не будет видна посетителям вашего web проекта. Такая карта сайта составляется с учетом специального синтаксиса, понятного поисковым машинам, где будут перечислены страницы сайта, подлежащие индексации с указанием степени их важности, даты последнего обновления и примерной частоты обновления.

Есть два основных файла, которые должны иметься у любого web проекта — robots.txt и sitemap xml. Если у вашего проекта файлов robots.txt и sitemap xml нет или они заполнены не правильно, то с большой долей вероятности вы сильно вредите своему ресурсу и не позволяете ему раскрыться на все сто процентов. Вы, конечно же, может не послушать меня (ибо я не есть авторитет, в силу относительно малого накопленного фактического материала), но думаю, что со специалистами, имеющими под рукой статистику с десятков тысяч проектов, вы огульно спорить не будете.

На этот случай у меня оказался припасен «рояль в кустах». Прямо перед написанием этой статьи попалась на глаза публикация специалистов из всем известной системы автоматического продвижения под необычным названием «Руки» (смотрите баннер под статьей). Понятно, что любая подобная им система заинтересована в том, чтобы проекты их клиентов успешно продвигались, но они могут только накачивать ресурсы клиентов ссылочной массой, а влиять на наполнение и правильную техническую настройку сайтов они, к сожалению, не могут.

Поэтому и было проведено очень интересное и показательное исследование, которое было призвано выявить 10 самых популярных причин, которые затрудняют продвижение проектов и ткнуть этими данным клиентам прямо в ... На первом месте, конечно же, был «не уникальный контент» (либо вы скопистили, либо у вас украли тексты, что сути не меняет). Но на втором месте была как раз именно карта сайта sitemap xml, а точнее ее отсутствие или несоответствие признанному формату создания. Ну, а на третьем месте был уже упомянутый ранее файл robots.txt (его отсутствие или неправильное создание):

sitemap xml

Когда голословно утверждаешь, что карта сайта в формате xml должна быть у вашего проекта обязательно (иначе кирдык), то это не звучит так убедительно, как в случае подкрепления данного утверждения реальными фактами из довольно таки репрезентативного исследования. Ладно, будем считать, что я вас убедил и давайте посмотрим, как можно самим создать карту сайта (синтаксис формата), как сделать карту сайта для Joomla и WordPress, а так же посмотрим, как можно будет создать sitemap xml с помощью специальных онлайн генераторов (generator).

Но просто создать карту сайта sitemap xml еще не достаточно для того, чтобы быть уверенным в правильной индексации вашего проекта поисковиками. Нужно еще будет сделать так, чтобы об этой самой карте сайта узнали поисковые системы (в нашем случае это Google и Яндекс). Сделать это можно будет двумя способами, но об этом мы поговорим чуть позже (должна же быть хоть какая-то интрига, удерживающая внимание читателей).

Зачем вообще нужна карта сайта sitemap xml и файл robots.txt

Давайте для начала попробуем обосновать логическую необходимость использования как файла robots.txt, запрещающего индексацию определенных элементов вашего web проекта, так и файла карты сайта sitemap xml, предписывающего индексацию определенных страниц. Для этого давайте вернемся на пяток-десяток лет назад, когда большинство сайтов в интернете представляли из себя просто набор Html файликов, в которых и содержались тексты всех статей вашего ресурса.

Поисковый робот Google или Яндекса просто заходил на такой Html проект и начинал индексировать все что ему попадется под руку, ибо практически везде содержался контент проекта. А что же происходит сейчас, в условиях повального использования CMS (например, той же CMS Joomla)? Собственно, даже сразу же после установки движка поисковый робот уже обнаружит у вас несколько тысяч файлов и это при том, что никакого контента у вас еще может и не быть (ну, не написали вы еще ни одной статьи).

Да и вообще, контент в современных CMS, как правило, хранится не в файлах, а в базе данных, которую поисковый робот напрямую проиндексировать, естественно, не сможет (для работы с базами советую пользоваться PhpMyAdmin). Понятно, что потыркавшись туда сюда, поисковые роботы Яндекс и Google все же найдут ваш контент и проиндексируют его, но вот насколько быстро это произойдет и насколько полной будет индексация вашего проекта — очень большой вопрос.

Вот именно для упрощения и ускорения индексации проектов поисковиками в условиях повального использования CMS и следует в обязательном порядке создавать robots.txt и sitemap xml. C помощью файла robots.txt вы подсказываете роботам поисковиков на индексацию каких файлов не стоит тратить время (файлы движка), а так же с помощью robots.txt можно закрыть от индексации и часть страниц сайта для устранения эффекта дублирования контента, который присущ многим CMS (читайте об этом подробнее в статье про robots.txt).

А с помощью файла карты сайта sitemap xml вы четко и ясно говорите роботам Яндекса и Google что именно на вашем проекте содержит контент, чтобы роботы не тыркались понапрасну по углам файлового хозяйства используемого движка. Не забывайте, что у роботов поисковых систем есть определенные лимиты на время и количество просмотренных документов. Робот побродит у вас по файлам движка и уйдет, а контент останется не проиндексированным еще долгое время. О как.

Помните как в известной комедии говорил один колоритный персонаж: «Ты туда не ходи, ты сюда ходи, а то...». Вот именно функцию этого персонажа и выполняют файлы robots.txt и sitemap xml для регулирования перемещений поисковых роботов по закоулкам вашего web проекта. Понятно, что боты могут и взбрыктуть, но скорее всего они послушно будут выполнять ваши грамотно написанные запрещающие (в robots.txt) и предписывающие (в карте сайта sitemap xml) инструкции.

Понятно? Тогда приступает непосредственно к решению вопроса, как создать sitemap xml различным способами и как сообщить о его существовании двум китам поиска в рунете — Google и Яндексу, чтобы они не шарились по вашему проекту почем зря, создавая при этом еще и дополнительную нагрузку на сервер вашего хостинга, но это, правда, уже сильно второстепенная вещь, главное — это именно индексация (быстрая и всеобъемлющая).

В отличии от robots.txt, который вам писать придется скорее всего собственноручно, файл карты сайта sitemap xml, как правило, стараются создать каким-либо автоматическим способом. Оно и понятно, ибо при большом количестве страниц на часто обновляемом проекте ручное создание файла карты сайта sitemap xml может привести к повреждению ума у вебмастера.

Да это вовсе и не обязательно, т.к. практически для каждой CMS найдется расширение, которое позволит создать, а при появлении новых материалов и пересоздать файл карты сайта в формате xml. Ну, или можно будет всегда воспользоваться каким-либо онлайн генератором (generator) карты сайта в виде готового файла sitemap xml.

Но все же, мне кажется, будет не лишним ознакомиться с нехитрым (да что там говорить — простейшим) синтаксисом создания sitemap xml. К тому же на маленьких и редко обновляемых проектах можно будет набросать sitemap xml и вручную.

Как создать Sitemap xml самому

Файл sitemap xml вы можете создать в любом текстовом редакторе, например, все в том же Notepad++. Карта сайта в формате xml имеет обычно примерно такую структуру. Сначала идет стандартная часть:

1
2
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

А затем идет серия повторяющихся блоков, заключенных в теги «url», каждый из которых описывает одну из страниц вашего проекта, для которого пишется данная карта сайта:

1
2
3
4
5
6
<url>
<loc>http://ktonanovenkogo.ru/</loc>
<lastmod>2011-05-12T19:22:36+00:00</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>

Обязательным в этом xml коде является только пара тегов «loc», в которых заключается адрес страниц вашего проекта, которую должны будут проиндексировать поисковые системы Яндекс и Google. В теги «lastmod» заключена дата последнего обновления данной страницы, что позволит поисковому роботу лишний раз не заходить на не изменившуюся с момента последнего захода страницу.

В тегах «changefreq» указывается примерная частота обновления данной страницы (раз в день, неделю, месяц), ну, а в теге «priority» указывается приоритетность индексации данной страницы. Изначальный приоритет у всех страниц сайта равен 0.5, но вы вольны изменять его для определения очередности индексации страниц вашего web проекта (от 0 до 1). Не забывайте, что за один проход робот не сможет пройти по всем ссылкам в большой карте сайта (обычно около сотни ссылок за раз проходит робот), а значит с помощью большего приоритета можно выбрать наиболее важные для быстрой индексации страницы.

По стандарту файл sitemap xml не может содержать более 50 000 ссылок и весить более 10 Мб. Хотя, многие даже при превышении 500 — 1000 ссылок в карте сайта стараются ее разбить на несколько файлов, подсунув поисковым системам и указав в robots.txt индексный файл Sitemap, в котором имеются ссылки на все остальные файлы карт большого сайта. Синтаксис этого индексного файла Sitemap будет примерно таким:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
<sitemap>
<loc>http://ktonanovenkogo.ru/sitemap.xml.gz</loc>
<lastmod>2011-04-01T18:23:17+00:00</lastmod>
</sitemap>
<loc>http://ktonanovenkogo.ru/sitemap2.xml.gz</loc>
<lastmod>2011-04-01T18:23:17+00:00</lastmod>
</sitemap>

Как создать карту сайта для Joomla и WordPress

Создать карту сайта sitemap xml для WordPress можно будет с помощью плагина Google XML Sitemaps. Для создаваемой карты сайта вы сможет произвести множество настроек, которые позволят исключить из нее часть материалов вашего сайта, а так же может задать предполагаемую частоту обновления. Кроме создания карты сайта в формате xml, плагин Google XML Sitemaps при публикации новых материалов на вашем блоге уведомляет об этом многие поисковые системы, приглашая их побыстрее провести индексацию.

Путь до файла вашей карты сайта вы может задать сами в настройках плагина и даже можете дать ему название отличное от sitemap xml. Плагин Google XML Sitemaps может создавать обычный файл sitemap xml и его сжатую в архив копию sitemap.xml.gz. Вам нужно будет создать эти файлы в любом месте вашего сайта (ftp клиент FileZilla вам в этом поможет) и назначить для этих двух файлов права доступа CHMOD 666, иначе плагин не сможет обновлять вашу карту сайта при появлении новых материалов на блоге.

sitemap xml

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

Создать карту сайта для Joomla можно будет с помощью компонента Xmap. По приведенной чуть выше ссылке вы найдете довольно подробную инструкцию, как по созданию карты сайта в виде файла sitemap xml, так и по созданию карты сайта в формате Html, ориентированную в первую очередь не на ускорение индексации, а на удобство пользователей. Ссылку на карту сайту для Joomla в формате Xml вы сможете найти в настройках компонента Xmap:

joomla карта сайта

Добавить карту сайта sitemap xml в Яндекс Вебмастер и панель инструментов Google

Как видите, в отличии от файла robots.txt (который обязательно должен находиться в корневой папке вашего web проекта), файл карты сайта sitemap xml может лежать где угодно. Но вам нужно будет сообщить о местоположении файла sitemap xml поисковым системам. Сделать это можно будет двумя способами. Во-первых, в robots.txt предусмотрена специальная директива «Sitemap», которая, например, для моего блога будет выглядеть так:

1
Sitemap: http://ktonanovenkogo.ru/sitemap.xml

или так (файл карты сайта в формате xml вовсе не обязательно должен называться sitemap.xml)

1
Sitemap: http://ktonanovenkogo.ru/forum/index.php?action=sitemap;xml

Обязательно нужно прописывать полный абсолютный путь до файла карты сайта sitemap xml, не опуская «http://ktonanovenkogo.ru». Это я говорю потому, что пути во всех остальных директивах robots.txt пишутся без указания «http://ktonanovenkogo.ru». Обычно директиву «Sitemap» прописывают в самом конце. Поисковые роботы Google и Яндекса при очередном заходе на ваш web проект, обязательно просмотрят содержимое robots.txt и загрузят для изучения вашу карту сайта sitemap xml.

Но существует еще один способ уже напрямую передать информацию о местоположении карты сайта поисковым системам без посредничества robots.txt. Делается это через интерфейс Яндекс Вебмастера и панели инструментов Google. Вы уже знакомы с этими инструментами поисковых систем? Если нет, то обязательно добавьте свой проект и в Яндекс Вебмастер и в панель инструментов Google, а затем укажите в соответствующих вкладках путь до вашей карты сайта в формате Xml.

Так выглядит форма добавления карты сайта в формате Xml для Яндекс Вебмастера:

карта сайта для яндекса

А так выглядит аналогичная форма для прописывания пути до файла sitemap xml в панели инструментов Google:

sitemap  генератор

Онлайн генераторы карты сайта Sitemap Generator и XML Sitemaps

Если вам не охота искать расширения для своей CMS, позволяющие автоматически создать карту сайта в формате Xml, то можете воспользоваться в этом случае онлайн генераторами sitemap xml. Тут, правда, есть один недостаток, по сравнению с автоматическим созданием карты в самой CMS — после добавления новых материалов вам придется снова идти на онлайн сервис sitemap xml generator и повторно создавать карту сайт, а затем загружать ее к себе на сервер.

Наверное, один из самых известных онлайн генераторов карты сайта — это Sitemap Generator. Этот онлайн generator обладает достаточно большим функционалом и позволит вам бесплатно генерировать карту сайта на 1500 страниц, что достаточно много.

При создании карты сайта, онлайн сервис Sitemap Generator будет учитывать содержимое вашего файла robots.txt, чтобы в карту не попали запрещенные к индексации страницы. Само по себе это не страшно, ибо запрет в robots.txt по любому будет иметь больший приоритет, но зато избавит от лишней информации в создаваемом файле sitemap xml. Для того, чтобы сделать карту сайта, вам достаточно будет указать URL сайта и сообщить свой E-mail, после чего вас поставят в очередь на генерацию:

Sitemap Generator

Когда до вас дойдет очередь, то вы получите об этом почтовое уведомление и перейдя по ссылке из письма сможете скачать sitemap xml, который сделал для вас Sitemap Generator. Останется только закинуть этот файлик с картой сайта в нужное место на своем сервере. Ну, и такую процедуру вам придется повторять время от времени для того, чтобы поддерживать актуальность вашей карты сайта.