G|Translate: English EN Français FR Deutsch DE Italiano IT Русский RU Español ES

Файл Sitemap.xml

Файл sitemap.xml нужен для роботов поисковых систем, что бы они “понимали”, какие страницы нужно индексировать.

Файл Sitemap.xml

Без файла sitemap.xml в первую очередь проиндексирована только одна главная страница. По ссылкам с нее роботы пойдут намного позже (страниц и сайтов стало много и робота на всех не хватает). Файл sitemap влияет только на индексацию сайта и никак не влияет на показ сайта в поисковой выдаче (т.е. роботы про сайт знают, а уж как его показывать в выдаче – это их дело).

Официальный сайт правил находится здесь sitemap.org (версия на русском языке)

Общие требования к файлу sitemap.xml

ВАЖНО:

  • название файла может быть любым и находиться он может в любой папке -> нужно указать его расположение с помощью файла robots.txt (который находится в корневой папке)
  • файлов sitemap может быть несколько – основной индексный (где указана информация про остальные файлы) и отдельные файлы sitemap на отдельные разделы сайта

Теперь подробнее:

  • формат файла может быть как xml (предпочтительнее) и txt – в любом случае это простой текстовый файл, который можно открыть “блокнотом”
  •  файл может содержать как список страниц так и список других файлов sitemap (индекс)
  •  файл может называться как угодно, вида mysitemap.xml (например, часть систем создания сайтов формируют свой файл sitemap и не дают возможности его изменить, можно сделать свой файл mysitemap.xml и “скормить” его роботам)
  • ссылки в файле Sitemap должны указывать на страницы, находящиеся в том же каталоге (или его подкаталогах), что и сам файл Sitemap
  • ссылки, указанные в файле Sitemap, должны использовать тот же протокол (например, HTTP), по которому доступен файл Sitemap
  • символы в URL (& ‘ ” < >) должны быть заменены на мнемоники (&amp; &apos; &quot; &gt; &lt;)
  • кириллические домены записываются в виде https://xn--80aswg.xn--p1ai/

Пример файла sitemap для данного сайта https://seotable.ru/sitemap.xml

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<!-- Generated by TSL plugin sitemap December 6, 2020 -->
<!-- Version 1.3 -->
<url>
<loc>https://seotable.ru/</loc>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<!-- home page -->
<url>
<loc>https://seotable.ru/2020/12/05/zashhishhaem-skript-php-ot-prjamogo-vyzova/</loc>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://seotable.ru/2020/11/17/kak-zarabotat-na-reklame-na-informacionnom-sajte/</loc>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
.............и так далее

Комментарии делаются так же, как и в html – через <!–  комментарий  –>

Общие требования поисковых систем к файлу sitemap.xml

  • Используйте кодировку UTF-8.
  • Максимальное количество URL – 50 000.
  • Ссылки в sitemap должны быть на том же домене, что и файл. 
  •  Если файл слишком большой (см. ниже ограничения), разделите его на несколько и укажите их в файле индекса Sitemap.
  • Ответ сервера при обращении к файлу должен быть 200 ОК.
  • Указывайте только канонические адреса страниц (без GET-параметров и идентификаторов сессий).

 

Требования ПС Яндекса Google
Максимальный размер 10 МБ 50 МБ
Шрифт Поддержка кириллические URL Поддерживает только цифры и латинские буквы
Индексация картинок Не поддерживает Используются тэги html <image:image>

Читаем официальную справку Google по файлу sitemap.xml

https://developers.google.com/search/docs/advanced/sitemaps/build-sitemap?hl=ru

Для совместимости делают две карты сайта – обычную и для картинок:

  • в robots,txt для бота Яндекс указывается только обычная карта
  • в robots,txt для бота Google указывается оба файла sitemap

Распространённая ошибка: чтобы уменьшить требования к пропускной способности канала, используют архиватор gzip. Размер сайтмапа должен быть 50 МБ (10 МБ) до сжатия, а не после. 

Файл sitemap можно проверить на валидность.
Для определения элементов и атрибутов, которые могут появляться в файлах Sitemap, используются следующие XML-схемы:

Для файлов Sitemap: http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd
Для файлов индекса Sitemap: http://www.sitemaps.org/schemas/sitemap/0.9/siteindex.xsd

Основные xml тэги для файла sitemap.xml

Атрибут Статус Описание
<urlset> обязательный Инкапсулирует этот файл и указывает стандарт текущего протокола.
<url> обязательный Родительский тег для каждой записи URL-адреса. Остальные теги являются дочерними для этого тега.
<loc> обязательный URL-адрес страницы. Этот URL-адрес должен начинаться с префикса (например, HTTP) и заканчиваться косой чертой, если Ваш веб-сервер требует этого. Длина этого значения не должна превышать 2048 символов.
<lastmod> необязательно

Дата последнего изменения файла. Эта дата должна быть в формате W3C Datetime. Этот формат позволяет при необходимости опустить сегмент времени и использовать формат ГГГГ-ММ-ДД.

ВАЖНО: если ВЫ используете плагин для CMS / автогенератор – обязательно проверьте, какая именно дата там показана. У некоторых плагинов (в т.м. числе и хороших) выводится дата создания,  а не дата последнего изменения. Т.е. если Вы создали пост 1 января, а потом вносили в него изменения 2,3 и так далее до 10 января =в файле sitemap.xml будет стоять дата 1 января….Не хорошо.

Обратите внимание, что этот тег не имеет отношения к заголовку “If-Modified-Since (304)”, который может вернуть сервер, поэтому поисковые системы могут по-разному использовать информацию из этих двух источников.

<changefreq> необязательно

Вероятная частота изменения этой страницы. Это значение предоставляет общую информацию для поисковых систем и может не соответствовать точно частоте сканирования этой страницы. Допустимые значения:

  • always
  • hourly
  • daily
  • weekly
  • monthly
  • yearly
  • never

Значение”всегда” должно использоваться для описания документов, которые изменяются при каждом доступе к этим документам. Значение “никогда” должно использоваться для описания архивных URL-адресов.

Имейте в виду, что значение для этого тега рассматривается как подсказка, а не как команда. Несмотря на то, что сканеры поисковой системы учитывают эту информацию при принятии решений, они могут сканировать страницы с пометкой “ежечасно” менее часто, чем указано, а страницы с пометкой “ежегодно” – более часто, чем указано. Сканеры могут периодически сканировать страницы с пометкой “никогда”, чтобы отслеживать неожиданные изменения на этих страницах.

<priority> необязательно

Приоритетность URL относительно других URL на Вашем сайте. Допустимый диапазон значений — от 0,0 до 1,0. Это значение не влияет на процедуру сравнения Ваших страниц со страницами на других сайтах — оно только позволяет указать поисковым системам, какие страницы, по Вашему мнению, более важны для сканеров.

Приоритет страницы по умолчанию — 0,5.

Следует учитывать, что приоритет, который Вы назначили странице, не влияет на положение Ваших URL на страницах результатов той или иной поисковой системы. Поисковые системы используют эту информацию при обработке URL, которые относятся к одному и тому же сайту, поэтому можно использовать этот тег для увеличения вероятности присутствия в поисковом индексе Ваших самых важных страниц.

Кроме того, следует учитывать, что назначение высокого приоритета всем URL на Вашем сайте не имеет смысла. Поскольку приоритетность – величина относительная, этот параметр используется для того, чтобы определить очередность обработки URL в пределах сайта.

Индексный файл sitemap.xml

В случае большого сайта (для удобства и роботам и админу) можно создавать несколько файлов под разные разделы сайта и объединять их индексным файлом. У нас на сайте могут быть страницы:

  • информационные страницы
  • записи (посты блога)
  • страницы пагинации (когда часть постов расположена на 2-й, 3-й и других страницах)
  • страницы авторов (все посты данного автора)
  • страницы архивов
  • страницы товаров
  • и прочая…

Основные xml тэги для файла sitemap, который содержит информацию о других файлах sitemap (индекс):

Атрибут  Статус Описание
<sitemapindex> обязательный Инкапсулирует информацию о всех файлах Sitemap в этом файле.
<sitemap> обязательный Инкапсулирует информацию об отдельном файле Sitemap.
<loc> обязательный

Указывает местоположение файла Sitemap.

Этим местоположением может быть файл Sitemap, файл Atom, файл RSS или простой текстовый файл.

<lastmod> необязательно

Указывает время изменения соответствующего файла Sitemap. Не соответствует времени изменения ни одной из страниц в этом файле Sitemap. Значение тега “lastmod” должно быть представлено в формате W3C Datetime.

Предоставляя отметку времени последнего изменения, Вы позволяете сканерам поисковой системы извлекать только часть файлов Sitemap в индексе, то есть сканер может извлекать только те файлы Sitemap, которые были изменены после определенной даты. Этот механизм частичного извлечения файлов Sitemap позволяет быстро обнаруживать новые URL на сайтах больших размеров.

Как  создать файл sitemap?

Вариантов несколько:
– через внешнюю программу
– через плагин к CMS
– через встроенный генератор, например в CMS 1C-Bitrix создаются и индексные файл и файлы с указанием на страницы

Более того – URL это ссылка (адрес), а не файл.

Часть CMS/плагинов умеют создавать ссылку вида mydomen.ru/sitemap.xml при отсутствии самого файла на сервере (динамический sitemap). 

Как показать файл sitemap.xml роботам?

ВАЖНО: без явного указания названия файла поисковые машины его не найдут, т.к. названия файла может быть любым

С учетом различных требований Яндекс и Google – создаем для сайта два отдельных файла yandexmap.xml и googlemap.xml – и отдельно указываем их в файле robots.txt

User-agent: Yandex
Sitemap: https://seotable.ru/yandexmap.xml
User-agent: Google
Sitemap: https://seotable.ru/googlemap.xml

Можно вручную в вебмастере указать роботам, как называется и где находится файл sitemap.xml

Для Яндекс.Вебмастер (необходима регистрация)

Файл Sitemap.xml

Для Google.Webmaster (необходима регистрация)

 Файл Sitemap.xml

ВАЖНО: в Google можно отправить информацию о файле sitemap.xml сайта с помощью HTTP-запроса, без регистрации и смс

https://www.google.com/ping?sitemap=https://example.com/sitemap.xml

Удобно.

К тому же это позволяет автоматизировать обновление файла sitemap.xml с помощью php при изменении текущего файла карты сайта.


Вы можете сохранить ссылку на эту страницу себе на компьютер в виде htm файла