В большинстве случаев поисковые роботы узнают о страницах сайта, переходя со страницы на страницу по ссылкам, и этого бывает достаточно для полного сканирования сайта. Но во многих случаях (к примеру, если на вашем сайте имеется много динамически создаваемых страниц, или страниц на которые требуется много переходов по ссылкам) поисковые роботы не могут найти все страницы или могут неверно присвоить им важность. Для этого на сайте предусматривают файл Sitemap.
Как сообщить поисковикам о файле Sitemap.
Какие форматы Sitemap поддерживают поисковые системы
Большинство поисковых систем могут принимать файлы Sitemap в различных форматах, но рекомендуется файлы создавать на основе протокола Sitemap, так как его можно будет использовать для разных поисковых систем (Yandex, Bing, Yahoo и т.п.), которые являются участниками ресурса sitemap.org.
Обычно файл Sitemap имеет вот такие стандартные переменные:
[url] [loc]http://excalibur.com.ua[/loc] [lastmod]2010-10-13[/lastmod] [changefreq]daily[/changefreq] [priority]1.0[/priority] [/url]
Где:
Собственно по созданию Sitemap. В интернете существует много сервисов, которые позволяют создать файл автоматически. Ниже представлен список сервисов независимых производителей.
Обратите внимание, что поисковые системы не проверяли и не подтверждали полноценные функции и безопасность программного обеспечения независимых производителей.
Серверные программы:
ЦМС и другие плагины
Загружаемые средства
Онлайн генераторы/сервисы
Ну и если вы решили сделать собственноручно сервис на свой сайт, вот ниже представлено фрагменты исходных кодов для реализации:
Кроме этого стоить сказать о файлах Sitemap для новостей. Так как новостные порталы очень активно наполняются контентом, надо чтобы и индексировались намного быстрее обычных сайтов. Именно для этого были предусмотрены новостные файлы Sitemap.
Подробнее о файлах Sitemap для новостей.
Для ЦМС WordPress был создан такой плагин:
Проблема сервисов в том, что они генерируют статическую Sitemap, а ваш сайт не стоит на месте и все время добавляется новый контент, т.е. появляются новые URL. Но в сгенерированном Sitemap свежие ссылки отсутствуют, потому, нужно после каждого обновления сайта снова пользоваться услугами сервиса, что, как вы понимаете, не очень удобно. Это же касается и плагинов CMS, ведь не всегда можно предвидеть как будет сгенерирована карта сайта, после добавления новых компонент/модулей на Ваш проект. Поэтому для идеальности надо следить в каком случае и как формируется Sitemap.
Поисковики Google Yandex предусмотрели в своих панелях для вебмастеров возможность добавления файлов Sitemap.
Кроме того есть возможность сообщить о файле с помощью robots.txt в директиве Sitemap:
User-agent: * Disallow: / Sitemap: http://excalibur.com.ua/sitemap/index.xml
В случае если на сайте несколько Sitemap – укажите все (ниже представлено случай, когда имеется два файла).
User-agent: * Disallow: / Sitemap: http://excalibur.com.ua/sitemap/index1.xml Sitemap: http://excalibur.com.ua/sitemap/index2.xml
Если же вы хотите удалить файл Sitemap, делаете это через те же панели инструментов и не забываете об удалении из директивы Sitemap в robots.txt.
Нужно зазначить, что кроме вышеуказанного формата XML можно использовать :
RSS 2.0 и Atom 1.0. То есть при наличии на сайте или блоге RSS(Real Simple Syndication) или Atom-фида, то с легкостью можете отправить URL этого фида как источник файла Sitemap. Но надо иметь ввиду, что обычно с помощью фида передается информация только о последних URL-адресах.
Текстовый файл (txt). В файле который вы предоставите должен содержать по одному URL-адресу на каждую строку. Пример:
http://excalibur.com.ua/sitemap/index1.txt
http://excalibur.com.ua/sitemap/index2.txt
для получения максимально эффекта надо следить :
Подробнее можно посмотреть в документации к протоколу Sitemap
Ниже приведен пример XML-файла индекса Sitemap, в котором перечислены два файла Sitemap.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>http://excalibur.com.ua/sitemap1.xml.gz</loc>
<lastmod>2004-10-01T18:23:17+00:00</lastmod>
</sitemap>
<sitemap>
<loc>http://excalibur.com.ua/sitemap2.xml.gz</loc>
<lastmod>2005-01-01</lastmod>
</sitemap>
</sitemapindex>
Кроме базовых данных, файлы Sitemap могут содержать информацию о некоторых типах контента (изображения, видео, новости, геоконтент и т.п.). Поэтому является важным указывать соответствующие пространства имен (представлено ниже).
| Общие URL | xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" |
| Изображения | xmlns:image="http://excalibur.com.ua/schemas/sitemap-image/1.1" |
| Видео | xmlns:video="http://excalibur.com.ua/schemas/sitemap-video/1.1" |
| Контент для мобильных устройств | xmlns:mobile="http://excalibur.com.ua/schemas/sitemap-mobile/1.0" |
| Поиск кода | xmlns:codesearch="http://excalibur.com.ua/codesearch/schemas/sitemap/1.0" |
| Геоконтент | xmlns:geo="http://excalibur.com.ua/geo/schemas/sitemap/1.0" |
| Новости | xmlns:news="http://excalibur.com.ua/schemas/sitemap-news/0.9". Рекомендовано для новостей создавать отдельные Sitemap, которые будут намного чаще сканироваться. Подробнее о файлах Sitemap для новостей. |
Для определения атрибутов, которые были использованы в Sitemap используют две схемы по этому адресу:
http://www.sitemaps.org/schemas/sitemap/0.9/
А именно sitemap.xsd и siteindex.xsd.
Существует ряд инструментов, которые помагают работатьс фалами XML и проверять их по этой схеме. Инструменты можно найти по следующих адресах:
http://www.w3.org/XML/Schema#Tools
http://www.xml.com/pub/a/2000/12/13/schematools.html
Выходя из этого, для проверки файла Sitemap (а также файла индекса Sitemap) на основе выше указанных схем, необходимо в XML-файл добавить следующие заголовки:
Sitemap:
<?xml version='1.0' encoding='UTF-8'?> <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> ... </url> </urlset>
Файл индекса Sitemap:
<?xml version='1.0' encoding='UTF-8'?> <sitemapindex xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <sitemap> ... </sitemap> </sitemapindex>