MIGO Web-Development - разработка и cоздание сайтов в Киеве, Украине

Создание сайтов, поисковое продвижение в Google. Сопровождение, тех.поддержка


звонить: +38 (093) 636 78 08
писать: web@migo.com.ua


Добавляем sitemap.xml в Jekyll без использования плагинов

Добавляем sitemap.xml в Jekyll без использования плагинов

Я не люблю использовать плагины, если это не является обязательным, поэтому я был счастлив найти простой способ создания файла Sitemap на Jekyll без использования плагинов.

1. Создайте в корне сайта файл sitemap.xml со следующим наполнением:

---
layout: null
sitemap:
  exclude: 'yes'
---

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  {% for post in site.posts %}
    {% unless post.published == false %}
    <url>
      <loc>{{ site.url }}{{ post.url }}</loc>
      {% if post.sitemap.lastmod %}
        <lastmod>{{ post.sitemap.lastmod | date: "%Y-%m-%d" }}</lastmod>
      {% elsif post.date %}
        <lastmod>{{ post.date | date_to_xmlschema }}</lastmod>
      {% else %}
        <lastmod>{{ site.time | date_to_xmlschema }}</lastmod>
      {% endif %}
      {% if post.sitemap.changefreq %}
        <changefreq>{{ post.sitemap.changefreq }}</changefreq>
      {% else %}
        <changefreq>monthly</changefreq>
      {% endif %}
      {% if post.sitemap.priority %}
        <priority>{{ post.sitemap.priority }}</priority>
      {% else %}
        <priority>0.5</priority>
      {% endif %}
    </url>
    {% endunless %}
  {% endfor %}
  {% for page in site.pages %}
    {% unless page.sitemap.exclude == "yes" %}
    <url>
      <loc>{{ site.url }}{{ page.url | remove: "index.html" }}</loc>
      {% if page.sitemap.lastmod %}
        <lastmod>{{ page.sitemap.lastmod | date: "%Y-%m-%d" }}</lastmod>
      {% elsif page.date %}
        <lastmod>{{ page.date | date_to_xmlschema }}</lastmod>
      {% else %}
        <lastmod>{{ site.time | date_to_xmlschema }}</lastmod>
      {% endif %}
      {% if page.sitemap.changefreq %}
        <changefreq>{{ page.sitemap.changefreq }}</changefreq>
      {% else %}
        <changefreq>monthly</changefreq>
      {% endif %}
      {% if page.sitemap.priority %}
        <priority>{{ page.sitemap.priority }}</priority>
      {% else %}
        <priority>0.3</priority>
      {% endif %}
    </url>
    {% endunless %}
  {% endfor %}
</urlset>

2. Добавьте следующие настраиваемые параметры в свои шаблоны:

sitemap:
  lastmod: 
  priority: 0.5
  changefreq: monthly
  exclude: 'no'

Более подробную информацию о настройках можно найти на сайте sitemaps.org, я же опишу основные из них:

  • lastmod - показывает последний раз, когда была изменена страница/пост
  • priority - сообщает поисковым роботам, как вы расставляете приоритеты для страницы/поста в диапазоне от 0.0 до 1.0. По умолчанию используется значение 0.5.
  • changefreq - руководство для веб-сканера о том, как часто проверять изменения страницы/поста. Принимаемые значения: always, hourly, daily, weekly, monthly, yearly, never
  • exclude - принимаемые значения ‘yes’/’no’, если вы хотите, чтобы страница/пост были включены/исключены в карте сайта.

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

проспект И.Мазепы 5 07300 Украина, Киевская обл., г. Вышгород, +38 (093) 636 78 08
Рассказать друзьям:

comments powered by Disqus