変数

Jekyll は処理を行うファイルを探してサイトを横断します。 YAML Front Matter を持つ任意のファイルは処理の対象になります。 これらのファイルのそれぞれについて、 Jekyll は Liquid templating system を経由して様々なデータを作ります。 以下は利用可能なデータのリファレンスです。

グローバル変数

変数 説明

site

_config.yml からサイト全体の情報と設定項目を設定します。 詳細については、下記を参照してください。

page

Page 固有の情報と YAML Front Matter を設定します。 YAML front matter を経由して設定されたカスタム変数は、ここで利用可能です。 詳細については、下記を参照してください。

content

レイアウトファイルでは、Post または Page のレンダリングされたコンテンツはラップされます。 Post または Page ファイルの中には定義されていません。

paginator

paginate オプションを設定している時、この変数は使用可能となります。 詳細については、 Pagination を参照してください。

Site 変数

変数 説明

site.time

現在の時刻です。(あなたが jekyll コマンドを実行した時の)

site.pages

すべての Page のリストです。

site.posts

新しい順のすべての Post のリストです。

site.related_posts

処理されているページが Post ならば、これは 10 以下の関連する Post のリストが含まれています。 デフォルトでは、これらは低品質だが高速に計算されます。 低速だが高品質に結果を計算するためには、 jekyll コマンドに --lsi (latent semantic indexing) オプションを指定して実行します。

site.static_files

すべての静的ファイルのリストです。 (つまり、 Jekyll のコンバータや Liquid レンダラによって処理されないファイル) 各々のファイルには 3 つのプロパティがあります: path, modified_time そして extname

site.html_pages

すべての HTML ページのリストです。

site.collections

すべてのコレクションのリストです。

site.data

_data ディレクトリにある YAML ファイルから読み込まれたデータのリストです。

site.documents

各コレクションのすべてのドキュメントのリストです。

site.categories.CATEGORY

カテゴリが CATEGORY のすべての Post のリストです。

site.tags.TAG

タグ TAG を持つすべての Post のリストです。

site.[CONFIGURATION_DATA]

コマンドラインと _config.yml 経由で設定された 全ての変数は site 変数を介して利用できます。 例えば、あなたの設定ファイルの中に url: http://mysite.com が あるとしたら、あなたの Post と Page では site.url の中に格納されます。 Jekyll は _config.yml 内の watch モードの変更を 解析しないので、あなたは変数の変更を見るために Jekyll を再起動する必要があります。

Page 変数

変数 説明

page.content

未レンダリングの Page コンテンツです。

page.title

Page のタイトルです。

page.excerpt

未レンダリングの Page 抜粋です。

page.url

ドメインなしの Post の URL ですが、先頭にスラッシュがつきます、 例えば /2008/12/14/my-post.html です。

page.date

Post に割り当てられた日付です。 これは、新しい 日付/時間を指定することで Post の front matter で 上書きすることができます。 YYYY-MM-DD HH:MM:SS (UTC を想定), または YYYY-MM-DD HH:MM:SS +/-TTTT (タイムゾーンを指定するために UTC からオフセット、例えば 2008-12-14 10:30:00 +0900)

page.id

Post への一意な識別子です。(RSS フィードに役立ちます) 例えば /2008/12/14/my-post

page.categories

この Post が属するカテゴリのリストです。 カテゴリは、 _posts ディレクトリの上のディレクトリ構成から導出されます。 例えば、 /work/code/_posts/2008-12-24-closures.md という Post は、 このフィールドに ['work', 'code'] が設定されます。 これらもまた、 YAML Front Matter で指定することができます。

page.tags

この Post が属するタグのリストです。 これらは、 YAML Front Matter で指定することができます。

page.path

生 Post や Page へのパスです。 使用例: GitHub 上の Page や Post のソースにリンクを貼る。 これは YAML Front Matter で上書きすることができます。

page.next

site.posts 内の現在の Post の位置と比較して次の Post です。 最後のエントリは nil を返します。

page.previous

site.posts 内の現在の Post の位置と比較して前の Post です。 最初のエントリは nil を返します。

ProTip™: カスタム front-matter を使用する

任意のカスタム front-matter は指定した page の下で利用可能となります。 例えば、 Page の front-matter でcustom_css: true と指定した場合、 その値は page.custom_css として利用可能となります。

Paginator 変数

変数 説明

paginator.per_page

ページあたりの Post 数です。

paginator.posts

そのページで利用可能な Post です。

paginator.total_posts

Post の合計数です。

paginator.total_pages

Page の合計数です。

paginator.page

現在のページ数です。

paginator.previous_page

前のページ数です。

paginator.previous_page_path

前のページのパスです。

paginator.next_page

次のページ数です。

paginator.next_page_path

次のページのパスです。

Paginator 変数の可用性

これらは、 /blog/index.html のような サブディレクトリの中に配置されている index ファイルでのみ利用することができます