Jekyll обходит ваш сайт в поисках файлов для обработки. Любые файлы с вводной рассматриваются как требующие обработки. Для каждого из этих файлов Jekyll благодаря возможностям шаблонизатора Liquid делает доступными различные данные. Вот список этих данных.

Глобальные переменные

Переменная Описание
site Глобальные данные сайта + настройки конфигурации из _config.yml. Будет подробно описана ниже.
page Данные страницы + YAML вводная. Делает доступными собственные переменные, созданные во вводной. Будет подробно описана ниже.
content Используется в файлах макета при выводе контента для рендеринга. В файлах поста или страницы не определена.
paginator Доступна при активации в конфигурации разбиения на страницы. Подробности в разделе “Разбивка на страницы

Переменные сайта

Переменная Описание
site.time Текущее время (на время выполнения команды).
site.pages Список всех страниц.
site.posts Список всех постов в обратном хронологическом порядке.
site.related_posts Если страница обработана как пост, эта переменная содержит список из десяти связанных постов. По умолчанию эта выборка не слишком точная, но быстрая. Для более точных результатов (но с более долгим расчетом) запускайте команду jekyll с опцией --lsi (скрытое семантическое индексирование).
site.static_files Список всех статических файлов (т.е. файлов не обработанных конвертерами Jekyll или рендерером Liquid). У каждого файла есть три свойства: path, modified_time и extname.
site.html_pages Список всех файлов с расширением HTML из site.pages.
site.html_files Список всех файлов с расширением HTML из site.static_files
site.collections Список всех коллекций.
site.data Список данных, загруженных из файлов YAML из каталога _data.
site.documents Список всех документов в каждой коллекции.
site.categories.CATEGORY Список всех постов указанной категории CATEGORY.
site.tags.TAG Список всех постов с тегом TAG.
site.[CONFIGURATION_DATA] все переменные, заданные из командной строки или файла _config.yml доступны через переменную site. Например, если в вашем конфиге есть url: http://mysite.com, в ваших постах и страницах он будет доступен как site.url. Jekyll не отслеживает изменения в _config.yml в режиме наблюдения, для работы с новыми значениями переменных Jekyll надо перезапустить.

Переменные страницы

Переменная Описание
page.content Контент страницы, отрендеренный или нет в зависимости от того, обработан ли он Liquid и типа страницы.
page.title Название страницы.
page.excerpt Неотрендеренная выдержка из страницы.
page.url Часть URL поста без указания домена, начинающаяся слэшем, типа: /2008/12/14/my-post.html.
page.date Дата поста. Может быть переписана во вводной путем определения новой даты в формате YYYY-MM-DD HH:MM:SS (время UTC) или YYYY-MM-DD HH:MM:SS +/-TTTT (с поправкой временной зоны, например: 2008-12-14 10:30:00 +0900).
page.id Уникальный идентификатор поста (полезен в RSS фидах), например /2008/12/14/my-post.
page.categories Список категорий поста. Категории берутся из структуры каталогов выше местонахождения поста в _posts . Например, пост находящийся в /work/code/_posts/2008-12-24-closures.md будет иметь следующие категории — [work, code]. Также категории можно задать во вводной YAML .
page.tags Список тегов поста. Определяется во вводной YAML.
page.path Путь к исходному посту или страницы. Пример использования: ссылка на исходник страницы или поста на GitHub. Может быть переписан во вводной YAML.
page.next Следующий по отношению к текущему пост в site.posts. В последнем посте возвращает nil.
page.previous Предыдущий по отношению к текущему пост в site.posts. В первом посте возвращает nil.
Совет: используйте собственные вводные

Любая ваша вводная будут доступна через page. Например, если вы определите во вводной страницы custom_css: true значение будет доступно через page.custom_css.

Переменные для разбития на страницы

Переменная Описание
paginator.per_page Количество постов на странице.
paginator.posts Посты, доступные для этой страницы.
paginator.total_posts Общее количество постов.
paginator.total_pages Общее количество страниц.
paginator.page Номер текущей страницы.
paginator.previous_page Номер предыдущей страницы.
paginator.previous_page_path Путь к предыдущей странице.
paginator.next_page Номер следующей страницы.
paginator.next_page_path Путь к следующей странице.
Доступность переменных для разбития на страницы

Они доступны только в индексных файлах, но могут располагаться и в подкаталогах, например: /blog/index.html.