Найти в Дзене
Блог Web-Dev

Как сделать карту сайта xml

В сегодняшнем посте «Как сделать карту сайта xml», я постараюсь собрать вместе все тонкости по построению карты сайта (xml), потому что в разработке и успешном раскручивании веб-ресурса эта карта служит важнейшим элементом. Поскольку она указывает поисковикам наиболее важные страницы, которые необходимо проиндексировать, благодаря этому к ним будут иметь доступ потенциальные читатели через поисковую выдачу. Перед тем как приступить к главной части статьи, отмечу, что нужно понимать разницу между картой xml (у него может быть любое имя на выбор, только расширение должно быть xml) , от другой карты html. Разница между ними в том, что первая карта предназначена поисковым системам и её не видят посетители, а другая, имеющая настроенную структуру со списком ссылок на весь контент сайта, открыта для всех пользователей и в их "экскурсии по сайту" служит путеводной нитью. Плюс к этому HTML карта сайта для посетителей иногда помогает быстрее проиндексировать контент. Далее мы рассмотрим подробн
Оглавление

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

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

Далее мы рассмотрим подробнее, какой синтаксис и содержание должно иметься у карты xml и какими способами его сделать.

Польза карты сайта xml и какая у него связь с robots

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

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

Благодаря этому упрощалось миссия поисковиков, проверявшие эти проекты и индексировавшие все без разбору. Теперь в наше сегодняшнее время существуют различные движки, автоматизирующие работу по построению веб-ресурса. Из за этого возникает следующая проблема.

Практически все эти CMS, даже самый известный по всему миру WordPress, создает множество ненужных копий и страниц, в которых нет полезного материала для посетителей, а в случае их индексации – могут привести к суровым санкциям от поисковиков. Поэтому появилось необходимость в упорядочивании процедуры индексирования, чтобы разделить мухи от котлет. Данную роль вместе с картой осуществляет и robots.txt, они взаимодействуют друг с другом.

  1. Первый указывает поисковым системам, у каких страниц вашего сайта есть полезное содержание, благодаря чему подлежат индексированию. Это сильно сократит время для проверки страниц проекта, оно будет ему в плюс.
  2. Второй, файл robots, при помощи соответствующих директив ясно указывает на то, куда не надо заходить. В итоге боты Гугла и Яндекса "вслепую" не будут работать и не сунутся там, где располагаются технические и системные элементы сайта.

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

Sitemap: https://mysite.ru/sitemap.xml

Хотя, в наши дни эта инструкция несущественна для поисковых систем, ведь можно добавить sitemap и robots в панелях вебмастеров. Индексирование из-за этого не станет хуже.

При этом, имя сайтмапа может отличатся от заурядного "sitemap", например, «https://mysite.ru/xhipedbms.xml». Для защиты, многие владельцы веб-ресурсов используют это во всю и стараются скрыть сайтмап от посторонних взглядов, не упоминают в роботсе, маскируют необычным названием, нигде не афишируют и указывают путь к карте сайта xml исключительно в панелях Вебмастера.

Естественно, иногда поисковики с учётом их внутренних алгоритмов могут вести себя непонятно, но, так как поисковые системы сами настойчиво советуют применять «robots.txt», а также карту xml, правильное использование этих файлов чаще всего способствует решению задачи, так как все в выигрыше.

Как сделать карту сайта xml

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

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

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

Как было упомянуто выше, чтобы выполнить нашу задачу нужно сделать файл с форматом xml для этого подойдёт любой редактор, я чаще всего использую Нотепад. Данный файл с форматом xml поддерживается Гуглом и Яндексом. И выглядит примерно так:

-2

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

Первыми идут данные о версии документа «version="1.0"» – в настоящее время эта версия актуальна и кодировка «UTF-8», чтобы правильно отображался документ.

А следующим идет начало тега «<urlset>», в нем находится ссылка на веб-ресурс с пространством имен на языке xml:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

Данные строки должны находится в любом подобном документе. Затем идет весь набор тегов «<url>», внутри них расположены еще некие элементы, включающие все подробности различных ссылок на страницы сайта.

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

  • lastmod — время и дата последнего исправления веб-страницы ( YYYY-MM-DDThh:mm:ssTZD в международном формате). Синтаксис имеет некоторые особенности: время, пишется с T (часы, далее минуты и секунды), дата (год и месяц), и TZD, показывает часовой пояс, может находится как к западу (-01:00) от нулевого меридиана Земли, так и к востоку (+01:00). Например, Москва располагается в третьем часовом поясе, это значит московское время на три часа сдвинуто (+03:00);
  • loc — показывает на локализованные веб-страницы;
  • priority — указывает у каких страниц приоритет. Если веб-ресурс большой, то робот не будет сканировать его целиком. В такой ситуации он непременно зайдет на страницы с приоритетом, значения которого от 0 до 1. Если у вас блог небольшой и его страницы одинаково значимы, можно воспользоваться и показателем по умолчанию, который равен 0.5;
  • changefreq — указывает периодичность изменений: "never" (обычно служит для архивов) - никогда, "hourly" - раз в час, "weekly" - раз в неделю, "daily" - раз в день, "yearly" - раз в год, "monthly" - раз в месяц, "always" (для динамического контента) - всегда.

В данной конструкции наиболее важным служит только содержание, помещенное внутри тегов «loc», другие не так важны, но, как, вы наверное, уже догадались, их нельзя игнорировать.

Надо также обозначить, что есть конкретные необходимые нормы карты (xml), весить он должен не больше пятидесяти мегабайт (без сжатия) и численность находящихся внутри него урл-адресов не должно превышать 50 000. Посему для крупных веб-ресурсов нужен другой метод.

В случае превышения веса сайтмапа или число URL, тогда необходимо генерировать несколько sitemap и составляется индексный файл, содержащий на них ссылки:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://mysite.ru/sitemap-1.xml.gz</loc>
<lastmod>2021-08-31T19:05:50+03:00</lastmod>
</sitemap>
<sitemap>
<loc>https://mysite.ru/sitemap-2.xml.gz</loc>
<lastmod>2021-08-31T19:05:50+03:00</lastmod>
</sitemap>
</sitemapindex>

Чтобы по возможности избавиться от всех белых пятен во время изучения текущей темы, можно зайти на ресурс Sitemaps.org и ознакомиться со всеми тонкостями работы с сайтмапом.

Как с помощью различных сервисов сделать карту сайта xml

Впереди мы рассмотрели сущность содержимого сайтмапа, теперь пора переключиться на механизмы, чтобы создание sitemap выполнялось автоматически. Сперва расскажу о сервисах генераторах, коих в сети хватает и вы можете их опробовать. Могу посоветовать «mysitemapgenerator.com», где можно подобрать наиболее удобный для вас способ создания сайтмапа:

-3

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

-4

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

-5

Блок настроек расположены внизу, они уже заранее настроены и многим ресурсам вполне подойдут, так что, вам возможно, ничего не нужно будет там менять. Однако с ними можно ознакомиться и если надо отрегулировать по своему. После чего подготовительный этап создания сайтмапа можно считать законченным, а потому набираем капчу и нажимаем кнопку «Старт!».

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

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

В этой связи хочу сосредоточить ваше внимание на настройках сервиса mysitemapgenerator, там есть вариант, с помощью которого можно иметь актуальный сайтмап с ссылками на свежие страницы. Но, для воплощения сей возможности вам также придется отдать свои кровные. Существует 4 варианта подписки:

-6

Сайтмап обновляется по предварительно указанному графику благодаря коду PHP установленному на ваш ресурс.

Как в Wordpress генерировать карту сайта xml

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

Начнем с популярного плагина «XML Sitemap Generator for Google», постоянно обновляющегося в течении продолжительного времени. Весь ход скачивания, установки и последующего активирования модуля займет считанные минуты.

Здесь практически ничего настраивать не нужно, так как многое заранее настроено и для обычного ресурса менять почти ничего не нужно, к тому же, это можно наладить в любое время. В будущем при надобности вы можете изменить, к примеру, периодичность обновления карты xml. Более подробно о нем, можете узнать, перейдя по этой ссылке — ru.wordpress.org/plugins/www-xml-sitemap-generator-org/.

В сущности «XML Sitemap Generator for Google» сделан для Гугла, но ввиду того, что требования к формату сайтмапа Гугла и Яндекса практически одинаковы, то и волноваться ни к чему.

Прекрасной альтернативой для вебмастеров может оказаться блок "XML карта сайта", входящий в состав отличного плагина All in One SEO Pack. Сперва его надо активировать в пункте "Управление модулями" и только тогда он будет доступен в панели админки Вордпресс:

-7

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

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

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

Как сайтмап закачать на сервер

Если вы использовали для создания sitemap.xml какое-нибудь расширение или модуль для сайта под WordPress или иной движок, то, наверняка, карта автоматически сгенерирована, и вам не нужно предпринимать никаких действий. Создавая эту карту вручную или с помощью генератора вам необходимо его загрузить на хостинг.

Вручную создавая sitemap, правильнее было бы использовать редактор Notepad++. С помощью него сделайте сайтмап и заполните содержимом, как его сделать было сказано выше, и сохраните с форматом .xml:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://mysite.ru/articles/internet/</loc>
<lastmod>2021-08-31T19:05:50+03:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://mysite.ru/articles/kompjuternaja-gramotnost/</loc>
<lastmod>2021-08-31T19:05:50+03:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://mysite.ru/articles/kak-obnovit-wordpress.php</loc>
<lastmod>2020-12-12T01:18:10+03:00</lastmod>
<changefreq>daily</changefreq>
<priority>0.5</priority>
</url>
</urlset>

Теперь файл с помощью ФТП-клиента надо загрузить на свой хостинг, для этого воспользуемся самым популярным FTP – Filezilla.

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

Как добавить карту сайта в панели вебмастеров

Без разницы, каким из сказанных выше вариантов вы производили на свет сайтмап, но для эффективного индексирования страниц веб-ресурса, следует добавить его в панель Вебмастера тех поисковиков, в которых вы намереваетесь продвигать свой блог.

Мы уже понимаем, что для рунета основными являются Yandex и Google, следовательно туда мы и отправимся, чтобы при помощи конкретно созданных для этого механизмов указать путь до нашего сайтмапа:

https://mysite.ru/sitemap.xml

В Вебмастере Yandex это следует выполнить в пункте «Индексирование», только не забудьте провести проверку на валидность перед добавлением:

-8

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

В Вебмастере Гугл -> Search Console, те же шаги можно осуществить воспользовавшись вот этой формой:

-9

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