Разборы

Как создать карту сайта?

Полезную для посетителей и роботов
Создание сайта

Карта сайта (sitemap) — это веб-страница или специальный файл со ссылками на все значимые страницы проекта. Она помогает пользователям и роботам быстро ознакомиться с содержанием ресурса и легко найти любую страницу.  Образно карту сайта можно сравнить с книжным оглавлением.

Карта сайта

Расскажу подробнее, как используют карту сайта и как её создать.

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

Допустим, посетитель заходит на сайт в поисках определённой информации. Он смотрит одну страницу, вторую, третью… но не находит того, что нужно. Если посетитель не знает о поисковых операторах, а на сайте нет карты — он может просто устать искать, закрыть сайт и уйти на другой ресурс.

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

Получается, что карта сайта выполняет такие важные задачи:

  • Упрощает навигацию для пользователей — пользователь быстрее находит раздел с нужными материалами.
  • Показывает роботам ссылки для изучения — краулеры проверяют указанные в ней страницы. 
  • Ускоряет индексацию контента — можно исключить из sitemap разделы, не требующие индексации, и поднять наверх новые страницы. 

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

Когда нужна карта сайта

На небольшом сайте роботам достаточно грамотной перелинковки страниц, чтобы проанализировать содержимое ресурса. Люди тоже могут изучить пару-тройку страниц безо всякого оглавления. То есть лендингам или сайтам-визиткам sitemap не требуется.

Вот несколько верных признаков того, что ресурсу необходима карта сайта:

Много страниц, разделов, подразделов. Оглавление облегчит навигацию как для роботов, так и для людей.

Мало внешних и внутренних ссылок. Если на сайт почти не ссылаются другие ресурсы и его страницы плохо связаны между собой, то краулеру сложнее найти как сам сайт, так и нужные страницы. 

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

Регулярное добавление/обновление контента. С помощью файла sitemap можно указать страницы для первоочередной индексации.

Веб-ресурс создан недавно. Наличие карты сайта ускорит индексацию страниц и, соответственно, проект быстрее попадёт в результаты выдачи по запросам. 

Как быстро проверить наличие и состояние карты сайта

Некоторые конструкторы сайтов создают sitemap автоматически. Также карту может добавить разработчик, который делает или поддерживает проект.

Если вы не знаете, есть ли на вашем ресурсе карта сайта и в каком она состоянии, это легко проверить. 

Самый простой способ — указать в поисковой строке адрес http://site.ru/sitemap.xml, где вместо site.ru надо вписать свой домен. Откроется страница с картой или отобразятся результаты поиска, включающие ссылку на неё.

Фрагмент сайтмэп
По запросу в браузере можно смотреть карту любого сайта при условии, что она не закрыта от просмотров

Также можно проверить наличие карты сайта через Яндекс.Вебмастер или Google Search Console. В частности, можно посмотреть, была ли она проиндексирована.

Ещё один способ для тех, кто хотя бы базово ориентируется в коде страниц: перейти в robots.txt и поискать там sitemap. В отдельной статье мы подробно рассказывали, как работать с файлом robots.txt.

Виды карт сайта

Карта сайта может быть создана в HTML и XML. Они отличаются форматом, внешним видом и предназначением. 

HTML sitemap

Этот формат предназначен для людей. Такая карта сайта выглядит как отдельная веб-страница со ссылками на все важные разделы. 

У HTML sitemap есть некоторые ограничения по объёму. На одной странице желательно размещать не больше 100 ссылок, иначе её сложно воспринимать людям, а роботы могут проиндексировать лишь часть ссылок. Также страница может быть исключена из поисковой выдачи за чрезмерное количество ссылок. 

Чаще всего карта HTML имеет древовидную структуру с разделами и подразделами.

Сайтмэп HTML
В sitemap для пользователей достаточно указать основные разделы и подразделы

Объёмные карты сайта нередко оформляют с использованием CSS-стилей, графических элементов и Java-script.

Пример сайтмэп
Главное в карте сайта для пользователей — простота и удобство использования

Но в целом HTML-карта не слишком важна для поисковых систем. Её задача — упростить пользователям навигацию и поиск необходимой информации.

XML sitemap

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

К числу обязательных тегов относятся: 

  • <urlset> — объединяет все URL; 
  • <url> — содержит сведения о конкретном адресе; 
  • <loc> — отображает непосредственно URL. 

Дополнительные теги: 

  • <lastmod> — показывает дату последнего изменения страницы;
  • <changefreq> — указывает на частоту изменения страницы; 
  • <priority> — отмечает приоритет страницы. 

Также при помощи тега xmlns указывают на пространство имён языка XML. Этот тег обеспечивает уникальность имён элементов и атрибутов в документе. Значение тега всегда указывается ссылкой. К примеру, xmlns=http://www.w3.org/1999/xhtml.

Пример сайтмэп XML
Карта сайта XML выглядит сложно для человека, но поисковики могут почерпнуть из неё много полезной информации

Правильный файл sitemap.xml должен иметь кодировку UTF8, которая наиболее совместима с другими кодировками. То есть XML в UTF8 будет корректно прочитан большинством браузеров. 

Для XML sitemap также предусмотрены ограничения: 

  • размер файла не больше 50 МБ; 
  • количество URL-адресов не больше 50 000. 

Наличие карты сайта в формате XML — не гарантия, что поисковики будут сканировать страницы строго по заданным параметрам. Но он служит подсказкой, которая помогает краулерам лучше понять структуру ресурса и быстрее обнаружить новый контент.

Оптимальное решение для сайта — создание двух карт: HTML Sitemap для пользователей и XML Sitemap для роботов.

Также есть упрощённый вариант карты сайта — TXT Sitemap. Это текстовый файл, где построчно перечислены все нужные ссылки. Например:

Пример сайтмэпа в текстовом формате
Каждый URL в текстовом формате указывают с новой строки

TXT sitemap не позволяет передавать дополнительную информацию, только адреса. Поисковики могут обратиться к нему при отсутствии файла XML.

Как создать карту сайта в HTML-формате

Основные требования к карте сайта в формате HTML — простота, наглядность, актуальность. То есть она должна быть максимально понятной и удобной для использования. Также её надо регулярно обновлять. 

Фактически HTML sitemap — это структурированный перечень всех значимых страниц, похожий на книжное оглавление. 

При создании: 

Соблюдайте строгую иерархию страниц. По структуре должно быть понятно, где разделы, а где подразделы. 

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

Не забывайте ставить активные ссылки. Пользователи должны иметь возможность быстро перейти на нужную страницу.

Способы создания

Создать карту HTML можно несколькими способами: 

  1. Вручную. Понадобятся навыки работы с HTML. Также можно создать текстовый файл и конвертировать его в HTML с помощью онлайн-сервисов. Пример: Texthandler, Convertio
  2. При помощи онлайн-сервисов. Нужно указать адрес сайта, и карта будет сгенерирована автоматически. Есть сервисы бесплатные, платные и условно-бесплатные (с ограничениями по количеству страниц). Примеры таких инструментов:

С помощью такого сервиса создать карту сайта сможет даже новичок:

Web-технологии
Пример создания site в сервисе Web-технологии
  1. При помощи плагинов CMS. Плагины изучают ресурс и генерируют карту сайта автоматически:

Какие страницы добавлять в карту HTML

Добавлять абсолютно все страницы сайта необязательно. Указывайте только самые значимые: 

  • категории; 
  • подкатегории; 
  • сведения о компании; 
  • условия сотрудничества; 
  • контакты. 

Но, конечно, всё зависит от общего объёма ресурса. В небольшом проекте карта может содержать ссылки на все материалы, которые есть на сайте. 

В любом случае не нужно добавлять в sitemap: 

  • закрытые от индексации страницы; 
  • ссылки с кодом ответа сервера, отличающимся от 200 ОК (кода ответа, при котором запрос корректный и сервер его успешно обрабатывает — т.е. пользователь переходит на рабочую страницу сайта); 
  • удалённые URL-адреса.

Готовую HTML-карту разместите на отдельной веб-странице. Ссылку на неё укажите в футере, чтобы попасть в sitemap можно было с любой страницы. Также сюда можно добавить ссылку на страницу 404.

Сколько HTML-карт можно создать

По количеству HTML-карт нет строгих рамок. Тут лучше ориентироваться на удобство использования. Если у сайта простая структура и общее число ссылок не больше 100, вполне достаточно одной карты. 

Для веб-ресурсов со сложной и запутанной структурой можно создать несколько карт — например, когда в каждом разделе сайта множества категорий и подкатегорий. В таком случае можно делать sitemap для каждого раздела.

Как создать карту сайта в формате XML

XML sitemap — это рекомендация для поисковиков по страницам, которые желательно проиндексировать. С помощью такого файла можно указать краулерам на значимые ссылки, сообщить о частоте обновления и т.д.

Важная задача — правильно прописать ссылки: 

  • указывать только канонические URL (основная версия для страниц с одинаковым контентом); 
  • все ссылки должны использовать единый протокол (http или https); 
  • все ссылки должны быть размещены на том же домене, что и XML sitemap. 

Способы создания

Для создания XML sitemap используют разные способы: 

  1. Самостоятельное написание с нуля. К примеру, файл можно создать в текстовом редакторе Notepad++. Но этот вариант требует времени и определённых знаний в программировании. Вручную можно написать карту для небольшого проекта. 
  2. Специальные сервисы. Есть много разных генераторов, платных и бесплатных. Как правило, они автоматически создают sitemap после указания домена сайта.

Примеры таких инструментов:

При создании XML-карты сайта в сервисе нужно просто задать необходимые параметры:

Сайтрепорт
Пример генерации карты сайта в сервисе «Сайтрепорт»
  1. CMS-плагины. Для сайтов на CMS есть разные плагины, генерирующие XML sitemap. Например:

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

Какие страницы включить в XML карту сайта

В карте сайта формата XML должны присутствовать все страницы, подлежащие индексации. При этом указанные страницы должны возвращать код ответа 200 ОК. 

Не нужно добавлять такие типы страниц: 

  • С кодом 404 и Not Found. Это удалённые страницы. 
  • Страницы soft 404. Они возвращают код ответа 200 ОК, не содержат или практически не содержат контента, перенаправляют на другой URL или заблокированы файлом robots.txt. 
  • С кодом 401. Это страницы, требующие авторизации и не предназначенные для индексации. 
  • С кодом 301. Это навсегда перемещённые страницы. 
  • С кодом 503 Service Unavailable. Такой ответ страницы указывает на временную проблему с сервером. 
  • Неиндексируемые страницы. Речь идёт о разных служебных страницах — личные аккаунты, страницы входа, контакты, FAQ. 

Перед составлением XML sitemap желательно выполнить аудит и убедиться, что все нужные страницы возвращают код ответа 200 ОК. Пример сервисов для проверки: BE1.RU, Collaborator.

XML sitemap нужно добавить в корневую директорию. Вставьте в любом месте файла robots.txt строку с путем к файлу sitemap.

Сколько файлов XML sitemap нужно сайту

Если карта сайта в XML-формате превышает допустимый размер и объём — 50+ МБ и/или 50 000+ ссылок — лучше всего поделить её на несколько файлов. 

Кроме того, использование файлов меньшего размера — хорошее решение с технической точки зрения. Чем больше sitemap, тем больше нагрузки она даёт на сервер. Это может стать причиной усечённых ответов или тайм-аутов соединения и привести к ошибкам сканирования. Чем меньше файл sitemap, тем ниже риск таких ошибок. 

Можно создавать отдельные карты сайтов в формате XML: 

  • Для разных разделов. Например, категории, товары, блог. 
  • Для видео. Поисковики могут использовать карту, чтобы показывать видео в специальных подборках или в выдаче по запросам. Сервис для генерации карт с видео — XML-sitemaps.com

Для изображений. Отдельная карта повысит шансы попадания в поиск по картинкам. Максимальный объём не должен превышать 1000 изображений. Сервис для создания sitemap с изображениями — Free image sitemap generator.

Чтобы добавить несколько карт, можно сделать сводный XML sitemap.

Создайте новый файл и добавьте в него ссылки на все карты сайта формата XML.

Готовые XML-карты желательно проверить на ошибки, чтобы исключить неправильную индексацию. Для этого можно воспользоваться такими инструментами: Websiteplanet, Mysitemapgenerator, Aspose.

Как оповестить поисковики о создании карты сайта

После создания XML sitemap следует сообщить об этом поисковикам. Конечно, они и сами со временем найдут файл, если он добавлен в robots.txt. Но произойти это может не скоро. 

Для уведомления поисковой системы Google используйте такие способы: 

  1. Google Search Console. Войдите в сервис и перейдите в раздел «Файлы Sitemap». Добавьте файл и нажмите «Отправить». 
  2. HTTP-запрос. В поисковой строке браузера укажите такой запрос — http://www.google.com/ping?sitemap=url_sitemap

Чтобы сообщить о карте сайта Яндексу, воспользуйтесь одним из следующих вариантов: 

  1. В Яндекс Вебмастер зайдите в раздел «Индексирование — Файлы Sitemap». Укажите ссылку на карту сайта и кликните «Добавить». 
  2. HTTP-запрос. В поисковой строке браузера укажите такой запрос — http://yandex.ru/ping?sitemap=sitemap_url_sitemap.

И Google Search Console, и Яндекс.Вебмастер после проверки XML sitemap сообщат о выявленных проблемах. Желательно выполнить рекомендации поисковиков и исправить обнаруженные ошибки.