Facebook ВКонтакте Twitter

Все о Sitemap и чем он может помочь вашему сайту?

Подробное описание формата Sitemap.xml и способов его генерации

Comments
 285
16.10.2018 | Время чтения: 12 минут
Facebook
Автор: Симагин Андрей

Многие из вас слышали про необходимость наличия у сайта карты Sitemap (он же "сайтмап"), однако не все до конца понимают важность его присутствия на сайте. В данной статье мы проведем обзор файла формата Sitemap.xml, а также опишем варианты его генерации для различных типов сайтов.

Почему так важен Sitemap.xml для вашего сайта

Структура статьи:

Для чего нужна карта сайта Sitemap.xml

Карта сайта Sitemap – это файл XML либо текстового формата (TXT), содержащий в себе все URL сайта (ссылки на страницы либо изображения) и предназначенный для сообщения поисковым роботам информации о новых страницах на вашем ресурсе. В результате обхода по всем URL в сайтмап, поисковая система перейдет по всем актуальным страницам вашего сайта.

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

Для подобных страниц из вышеописанных вариантов робот может не добраться никогда, так как в первом случае из-за глубокой вложенности он просто не дойдет до конечного URL, исчерпав краулинговые лимиты сайта, а во втором он физически их не увидит, так как не сможет на них перейти по ссылкам на сайте (например, это может быть вариант, когда ссылка есть, но проставлена при помощи JavaScript, CSS-стилем либо просто зашифрована, из-за чего в исходном коде страницы поисковый робот ее просто не увидит).

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

Описание формата Sitemap

Sitemap может быть двух типов: текстового формата (TXT) и формата XML.

Текстовый формат представляет собой простой текстовый файл кодировки UTF-8 и содержащий в себе URL сайта в виде наборов строк (каждая ссылка с новой строки). Пример карты сайта текстового формата:

https://www.site.ru/page-1.html
https://www.site.ru/page-2.html

Формат XML является расширенным форматом текстового варианта и позволяет передавать поисковым ботам дополнительную информацию. Пример файла Sitemap.xml:

<?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
        <url>
            <loc>http://www.site.ru/</loc>
            <lastmod>2018-10-03</lastmod>
            <changefreq>monthly</changefreq>
            <priority>1.0</priority>
        </url>
        <url>
            <loc>http://www.site.ru/page-1.html</loc>
            <lastmod>2018-10-03</lastmod>
            <changefreq>monthly</changefreq>
            <priority>0.9</priority>
        </url>
        <url>
            <loc>http://www.site.ru/page-2.html</loc>
            <lastmod>2018-10-03</lastmod>
            <changefreq>monthly</changefreq>
            <priority>0.9</priority>
        </url>
        ...
        <url>
            <loc>http://www.site.ru/page-N.html</loc>
            <lastmod>2018-10-03</lastmod>
            <changefreq>monthly</changefreq>
            <priority>0.9</priority>
        </url>
    </urlset>

Описание элементов XML, на которые необходимо обратить внимание:

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

Прочие форматы XML карты сайта:

Маскирование

Маскирование в Sitemap.xml используется для URL-адресов и предназначено для интерпретации обычных символов в их псевдокоды в формате HTML:

Таким образом, всем привычный URL с параметрами и не маскированными спецсимволами по стандартам XML будет невалиден, пример:

Стандартный URL страницы (не валидный)

https://www.site.ru/index.php?page=news&date=22071981

Валидный URL в Sitemap с маскированием (символ "&" заменен на "&amp;")

<loc>https://www.site.ru/index.php?page=news&amp;date=22071981</loc>

Для символов в URL, отличных от ASCI, помимо & также необходимо применять маскирование. Пример для URL-адреса:

http://www.site.ru/контакты.html

Тот же URL-адрес с использованием маскирования, для размещения в Sitemap:

http://www.site.ru/%D0%BA%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D1%8B.html

Разбиение Sitemap на составные части

У файла Sitemap.xml есть ограничение как на объем содержащихся в нем URL, так и на сам размер файла. В каждом файле Sitemap.xml должно содержаться не более 50 000 URL, а его объем не должен превышать 50 Мб для Google и 10 Мб для Яндекса (при необходимости файл можно сжать в формат "gzip", но, тем не менее, в распакованном виде он также не должен превышать размер в 50 мегабайт), поэтому при необходимости указания более 50 000 URL-адресов, следует создать несколько файлов Sitemap.

Таким образом, за счет возможности разбиения Sitemap на части, можно обойти все эти ограничения и спокойно генерировать Sitemap для десятков и сотен тысяч страниц.

Разбиение происходит путем создания основного индексного файла Sitemap.xml, содержащего ссылки на дочерние файлы, которые в свою очередь являются стандартными файлами Sitemap.xml и содержат список конечных URL вашего сайта. В основном индексном файле для указания ссылок на дочерние сайтмап используется все тот же тег <loc>, обрамленный тегом <sitemap>, и содержащий ссылки на дочерние Sitemap.xml (названия дочерних сайтмап можно указывать произвольно).

Пример индексного файла XML Sitemap:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <sitemap>
      <loc>http://www.site.ru/sitemap-1.xml</loc>
      <lastmod>2018-09-25T21:38:17+00:00</lastmod>
   </sitemap>
   <sitemap>
      <loc>http://www.site.ru/sitemap-2.xml</loc>
      <lastmod>2018-09-21</lastmod>
   </sitemap>
</sitemapindex>

Формат дочерних файлов карт сайта XML-формата аналогичен стандартным Sitemap.xml.

Местоположение Sitemap.xml и его индексация

Стандартным вариантом размещения сайтмап является корень сайта, пример:

https://www.site.ru/sitemap.xml

При размещении "sitemap.xml" необходимо учитывать тот факт, что набор URL-адресов, которые можно включить в Sitemap определяется именно расположением на сайте, то есть при размещении карты сайта по адресу http://site.ru/news/sitemap.xml она может включать только URL-адреса, начинающиеся с http://site.ru/news/, но не должен включать адреса, начинающиеся с http://site.ru/pages/. Примеры допустимых URL для http://site.ru/news/sitemap.xml:

http://site.ru/news/25092018/
http://site.ru/news/news-all/

К недопустимым URL-адресам в файле http://site.ru/news/sitemap.xml относятся:

http://site.ru/pages/page-1/
http://site.ru/images/1x1.gif
http://site.ru/contacts/

Таким образом, во избежание проблем с некорректной индексацией, настоятельно рекомендуется размещать Sitemap.xml в корне сайта.

Индексация Sitemap

Поисковые роботы по умолчанию сканируют корневую директорию сайта, поэтому со временем они найдут ваш сайтмап и перейдут по всем его ссылкам.

Однако, для ускорения посещения файла Sitemap поисковыми ботами необходимо выполнить несколько шагов:

Ссылка на сайтмап в "robots.txt"

User-agent: *
...
Sitemap: https://site.ru/sitemap.xml

Добавление сайтмап в панели вебмастера Яндекс и Google

Добавление сайтмап в панели вебмастера Яндекс и Google

Использование кириллических адресов

Для корректной интерпретации URL различными поисковыми системами рекомендуется все кириллические URL кодировать в формат Punycode (бесплатный конвертер) и использовать маскирование для кириллических адресов страниц.

То есть, вместо адреса:

http://www.ёэлектроника.рф/каталог/лампы/

Необходимо использовать кодированный URL:

http://www.xn--80ajjhbcqhrt1jzb.xn--p1a/%D0%BA%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3/

Вопрос необходимости карты сайта

Бесспорно, что присутствие карты сайта желательно на любом сайте. Но, с одной стороны, в сайтмапе нет острой необходимости, так как со временем поисковый робот перейдет на ваш сайт и по ссылкам просканирует все доступные ему страницы. С другой стороны, для сайтов, у которых контент обновляется часто и которым важен порядок и приоритет обхода страниц (СМИ, новостные агентства, etc.), данный файл будет жизненно необходим, так как с помощью него они смогут указать поисковым роботам какие страницы индексировать в первую очередь, а какие после.

Поэтому, возникает справедливый вопрос: а так ли необходим Sitemap.xml конкретно для вашего сайта? Давайте разбираться.

Безусловно, данный файл будет актуален для сайтов объемом от 1000 страниц, а также для тех сайтов, объем страниц которых растет быстро и контент на которых нуждается в частой переиндексации, поэтому за счет данного файла поисковая система будет иметь под рукой всегда актуальный список страниц вашего сайта и с помощью него же будет своевременно индексировать все изменения. Таким образом, актуален данный файл для сайтов, контент на которых меняется часто и большими объемами (добавилось 50 страниц, удалилось 40, обновилось 175 и т.д.):

Для подобных сайтов данный файл необходимо иметь в первую очередь, так как от него зависит актуальность представляемой информации в выдаче поисковых систем.

Пример индексации через сайтмап при добавлении на сайт большого числа страниц:

Пример индексации Sitemap

Примечание: файлы Sitemap в таком случае необходимо генерировать на стороне сервера. Генерация карты сайта онлайн при помощи сервисов либо программ для ПК бессмысленна за счет низкой скорости и трудоемкости работ по выкладыванию данных файл на сервер (для крупных порталов, каталогов и интернет-магазинов подобные файлы должны обновляться чуть ли не каждый час (например, обновление цен в интернет-магазине)).

Вторая категория сайтов, для которых также необходим данный файл – это сайты от 100 до 1000 страниц и представляющие услуги бизнеса, а также просто информационные странички:

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

Третья категория сайтов – сайты с числом страниц до 100. К ним относятся:

Все эти сайты зачастую содержат небольшое число страниц о какой-то одной услуге, товаре, событии. Для подобного рода сайтов в наличии Sitemap нет какой-то жизненно важной необходимости. Так как контент на них обновляется достаточно редко и новые страницы добавляются с низкой интенсивностью, поисковые роботы такие сайты обходят не часто в виду малого числа страниц на них, поэтому для данных сайтов вполне подойдет как использование Sitemap.xml, так и его предшественника HTML карты сайта – это обычная HTML-страница стилизованная под дизайн сайта, на которой размещены все ссылки на внутренние страницы сайта в иерархическом виде (обычно в виде дерева). Таким образом, поисковый робот, посетив эту страницу, может обойти все страницы сайта и проиндексировать их либо обновить о них информацию. Пример такой страницы:

html sitemap

Примечание: на текущий момент создание подобных страниц перестало быть актуальным в виду перехода на формат XML, который не нужно создавать руками, а можно сгенерировать специальными программами либо сервисами (их примеры представлены ниже).

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

Важно!
Сайтмап должен включать в себя только актуальные страницы сайта необходимые для индексации и отдающие код ответа сервера 200. Все прочие служебные, технические либо страницы, запрещенные к индексации, не должны присутствовать в карте сайта.

Варианты генерации Sitemap.xml

Существует несколько методов генерации, перечислим их:

1. Генерация карты сайта при помощи онлайн-генератора (стоит учесть, что зачастую подобные генераторы платные)

В сети достаточно сервисов для генерации карты сайта, однако у них есть некоторые ограничения:

Пример онлайн-генератора MySitemapGenerator.com:

Онлайн-генератор MySitemapGenerator.com

Примечание: Недостаток данного метода состоит в том, что при каждом обновлении сайта необходимо вручную генерировать сайтмап и заливать на сервер.

2. Автоматическая генерация Sitemap.xml средствами CMS (например в Bitrix, WordPress, Opencart и прочих системах управления сайтом доступна такая функция)

Наиболее приоритетный вариант, который позволяет настроить частоту обновления Sitemap средствами системы управления сайтом и избавляет вебмастера от ручного размещений сайтмап на сайте.

Пример модуля генерации Sitemap.xml для CMS Opencart:

Opencart Sitemap.xml NeoSeo

3. Генерация карты сайта при помощи программы для ПК

Данный вариант подойдет для сайтов небольших и средних размеров, контент на которых обновляется периодически.

Недостатки подобного метода:

Пример генерации Sitemap.xml при помощи бесплатной программы SiteAnalyzer:

SiteAnalyzer

SiteAnalyzer, генерация sitemap

Sitemap.xml

4. Ручное создание сайтмап

Ручное создание возможно для сайтов с числом страниц до 10, однако для ускорения процесса проще воспользоваться любым онлайн-генератором либо программой для ПК.

Резюмируя все вышеописанное можно выделить основные моменты, на которые нужно обратить внимание при генерации карты сайта:

На этом все!
Благодарю за внимание и до новых встреч! :-)

Полезное

Сервисы для проверки корректности карты сайта:

Ссылки на описание Sitemap:

Другие статьи:



<< Назад

С нами работают