Пользовательские данные
В каталоге _data содержатся дополнительные данные, которые Jekyll сможет использовать в шаблоне. Эти файлы должны быть в формате YAML, JSON, TSV или CSV (с использованием расширения .yml, .yaml, .json, .tsv, или .csv), и они будут доступны через переменную {{ site.data }}.
К примеру если создать файл с именем main-nav.yml и со следующим содержимым.
items:
- title: Базовая установка
url: /steps
links:
- title: Установка Jekyll
url: /steps
- title: Установка шаблона
url: /steps/init.html
- title: Архитектура шаблона
url: /steps/architecture.html
- title: Пользовательские данные (каталог _data)
url: /steps/data.html
То доступ к содержимому файла можно получить так {{ site.data.main-nav }}. Для получения вложенных значений нужно так же через символ ”.” обратиться к переменной по имени {{ site.data.main-nav.items }}.
Пример перебора данных через цикл.
<nav>
{% if site.data.main-nav.items[0] %}
<ul>
{% for item in site.data.main-nav.items %}
<li class="{% if entry.url == page.url %}active{% endif %}">
<a href="{{ entry.url }}">{{ entry.title }}</a>
{% if item.links[0] %}
<ul>
{% for entry in item.links %}
<li class="{% if entry.url == page.url %}active{% endif %}">
<a href="{{ entry.url }}">{{ entry.title }}</a>
</li>
{% endfor %}
</ul>
{% endif %}
</li>
{% endfor %}
</ul>
{% endif %}
</nav>