2.19.5.1. Карта сайта sitemap.xml
Файл карты сайта sitemap.xml в стандартизированной форме показывает поисковикам список страниц, которые подлежат индексации. Описание протокола доступно на официальном сайте.
Важные моменты:
- Файл
sitemap.xmlдолжен иметь именно такое название и его кодировка должна быть UTF-8. - Размер одного файла
sitemap.xmlне должен превышать 50 МБ. Если файл более 50 МБ, то нужно или архивировать его (с обязательным соблюдением расширения видаxml.zipилиxml.tar), или создать группу из нескольких карт сайта. - В одном файле
sitemap.xmlдолжно быть не более 50 000 ссылок. - Файл
sitemap.xmlдолжен размещаться в корневом каталоге сайта и быть доступен через браузер по адресу видаhttp://www.example.com/sitemap.xml. - Все ссылки в карте сайта должны быть абсолютными (вида
http://www.example.com/). - Карта сайта должна соответствовать требованиям нужного поискового робота, так как некоторые из них имеют определённые условия для использования этого файла.
- Карта сайта, используемая поисковыми роботами, является лишь рекомендацией. Роботы могут её игнорировать в случае ошибок в самой карте или по другим собственным причинам.
- Некоторые спецсимволы должны быть обязательно маскированы.
Синтаксис sitemap.xml
При составлении карты сайта нужно придерживаться определённого синтаксиса. Минимальная карта сайта с корректно составленным синтаксисом выглядит примерно так:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://example.com/</loc>
</url>
</urlset>
Теги
В файле sitemap.xml применяются следующие теги:
<?xml version="1.0" encoding="UTF-8"?>— пролог XML-файла. В этой строке указывается кодировка и версия XML. Эта строка всегда должна быть первой и она обязательна. Обязательный тег<urlset>...</urlset>— родительский тег, внутри которого помещаются все последующие указания на страницы сайта при помощи тегов<url>. Обязательный тег
В открывающем теге должен быть указан текущий протокол, то есть так:<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">...</urlset><url>...</url>— тег, внутри которого содержится сам URL-адрес и информация о нём. Обязательный тег<loc></loc>— тег, в котором указывается определённый URL. Обязательный тег<lastmod></lastmod>— даты последнего изменения. Необязательный тег<changefreq></changefreq>— вероятная частота изменения этой страницы. Этот тег носит лишь рекомендательный характер. Необязательный тег
Допустимые значения:always— проверять изменения при каждой индексации.hourly/daily/weekly/monthly/yearly— проверять изменения с определённым интервалом. Каждый: час/день/неделю/месяц/год.never— никогда не проверять изменения.
<priority></priority>— приоритетность URL относительно других URL, указанных в карте сайта. Значение задаётся от 0.0 до 1.0, по умолчанию для всех URL равно 0.5. Необязательный тегВнимание!
Тег priority не влияет на выдачу страниц в поиске. Его значение влияет только на очередь индексирования между страницами сайта.
Маскирование символов
В XML-файлах для всех данных (включая URL-адреса) символы & (амперсанд), ' (одинарные кавычки), " (двойные кавычки), < (больше) и > (меньше) обязательно должны быть указаны в виде HTML-сущностей (начинаются с &).
Создание группы нескольких файлов sitemap
Если файл sitemap.xml имеет размер более 50 МБ или включает в себя более 50 000 ссылок, то нужно разделить его на несколько файлов, при этом создав файл sitemap.xml, который будет вести на другие файлы карт сайта.
Пример файла индекса sitemap:
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>http://www.example.com/sitemap1.xml</loc>
</sitemap>
<sitemap>
<loc>http://www.example.com/sitemap2.xml</loc>
</sitemap>
</sitemapindex>
Файл индекса sitemap имеет следующий синтаксис:
<?xml version="1.0" encoding="UTF-8"?>— пролог XML-файла. В этой строке указывается кодировка и версия XML. Эта строка всегда должна быть первой и она обязательна. Обязательный тег<sitemapindex>...</sitemapindex>— родительский тег, внутри которого помещаются все последующие указания на файлы карт сайта. Обязательный тег<sitemap>...</sitemap>— тег, внутри которого содержится URL-адрес, указывающий на файл sitemap и информация о нём. Обязательный тег<loc></loc>— тег, в котором указывается определённый URL на файл sitemap. Обязательный тег<lastmod></lastmod>— дата последнего изменения. Необязательный тег
Сервисы генерации и проверки sitemap
Примеры сервисов для генерации и проверки файлов sitemap.