変数
Jekyllは、処理対象のファイルを探してサイト内を巡回します。 フロントマター を持つファイルはすべて処理の対象となります。これらのファイルごとに、JekyllはLiquid を介して様々なデータを利用可能にします。以下は利用可能なデータのリファレンスです。
グローバル変数
変数 | 説明 |
---|---|
|
サイト全体の情報と、 |
|
ページ固有の情報とフロントマター。フロントマターで設定したカスタム変数はここで利用可能です。詳細は下記参照。 |
|
レイアウト固有の情報とフロントマター。レイアウトのフロントマターで設定したカスタム変数はここで利用可能です。 |
|
テーマgemで定義された、テーマgem固有の情報。例えば、テーマデモの「概要」ページで情報をレンダリングする際に役立ちます。詳細は下記参照。 |
|
レイアウトファイルでは、ラップされている投稿またはページのレンダリング済みコンテンツ。投稿またはページファイルでは定義されていません。 |
|
|
サイト変数
変数 | 説明 |
---|---|
|
(`jekyll`コマンドを実行したときの)現在時刻。 |
|
すべてのページのリスト。 |
|
すべての投稿の逆時系列リスト。 |
|
処理対象のページが投稿の場合、最大10個の関連投稿のリストが含まれます。デフォルトでは、最新の10個の投稿です。高品質だが計算速度が遅い結果を得るには、`jekyll`コマンドを`--lsi` (潜在意味インデキシング)オプション付きで実行します。また、GitHub Pagesはサイト生成時に`lsi`オプションをサポートしていないことに注意してください。 |
|
すべての静的ファイル(つまり、JekyllのコンバーターまたはLiquidレンダラーによって処理されないファイル)のリスト。各ファイルには、`path`、`modified_time`、`name`、`basename`、`extname`の5つのプロパティがあります。 |
|
`site.pages`のサブセットで、`html`で終わるもの。 |
|
`site.static_files`のサブセットで、`html`で終わるもの。 |
|
すべてのコレクション(投稿を含む)のリスト。 |
|
`_data`ディレクトリにあるYAMLファイルから読み込まれたデータを含むリスト。 |
|
すべてのコレクション内のすべてのドキュメントのリスト。 |
|
`CATEGORY`カテゴリのすべての投稿のリスト。 |
|
`TAG`タグのすべての投稿のリスト。 |
|
`_config.yml`で設定されているサイトのURLが含まれています。例えば、設定ファイルに`url: http://mysite.com`がある場合、Liquidでは`site.url`としてアクセスできます。開発環境では例外があり、開発環境で`jekyll serve`を実行している場合、`site.url`は`host`、`port`、SSL関連オプションの値に設定されます。これはデフォルトで`url: https://:4000`になります。 |
|
コマンドラインと`_config.yml`で設定されたすべての変数は、`site`変数を通して利用可能です。例えば、設定ファイルに`foo: bar`がある場合、Liquidでは`site.foo`としてアクセスできます。Jekyllは`watch`モードでは`_config.yml`への変更を解析しません。変数の変更を確認するには、Jekyllを再起動する必要があります。 |
ページ変数
変数 | 説明 |
---|---|
|
ページのコンテンツ。処理されているLiquidと`page`によって、レンダリング済みまたは未レンダリングになります。 |
|
ページのタイトル。 |
|
ドキュメントの未レンダリングの抜粋。 |
|
ドメインを除いた、先頭にスラッシュが付いた投稿のURL(例:`/2008/12/14/my-post.html`)。 |
|
投稿に割り当てられた日付。投稿のフロントマターで、`YYYY-MM-DD HH:MM:SS`(UTCを想定)または`YYYY-MM-DD HH:MM:SS +/-TTTT`(UTCからのオフセットを使用してタイムゾーンを指定)の形式で新しい日時を指定することで上書きできます。(例:`2008-12-14 10:30:00 +0900`)。 |
|
コレクションまたは投稿内のドキュメントを一意に識別する識別子(RSSフィードで役立ちます)。例:`/2008/12/14/my-post`/`my-collection/my-document`。 |
|
この投稿が属するカテゴリのリスト。カテゴリは`_posts`ディレクトリの上のディレクトリ構造から導き出されます。例えば、`/work/code/_posts/2008-12-24-closures.md`にある投稿では、このフィールドは`['work', 'code']`に設定されます。これらはフロントマターでも指定できます。 |
|
このドキュメントが属するコレクションのラベル。例:投稿の場合は`posts`、パス`_puppies/rover.md`のドキュメントの場合は`puppies`。コレクションに属していない場合は、空の文字列が返されます。 |
|
この投稿が属するタグのリスト。フロントマターで指定できます。 |
|
ソースディレクトリと投稿またはページのファイル間のパス(例:`/pages/`)。これはフロントマターの`permalink`で上書きできます。 |
|
投稿またはページのファイル名(例:`about.md`)。 |
|
生の投稿またはページへのパス。使用例:GitHubで投稿またはページのソースへのリンク。これはフロントマターで上書きできます。 |
|
`site.posts`における現在の投稿の位置を基準とした次の投稿。最後のエントリの場合は`nil`を返します。 |
|
`site.posts`における現在の投稿の位置を基準とした前の投稿。最初のエントリの場合は`nil`を返します。 |
プロチップ™:カスタムフロントマターを使用する
指定したカスタムフロントマターは`page`で使用できます。例えば、ページのフロントマターに`custom_css: true`を指定した場合、その値は`page.custom_css`として使用できます。
レイアウトでフロントマターを指定した場合は、`layout`を介してアクセスします。例えば、レイアウトのフロントマターに`class: full_page`を指定した場合、その値はレイアウトとその親で`layout.class`として使用できます。
テーマ変数4.3.0
変数 | 説明 |
---|---|
|
テーマgemへの絶対パス。 |
|
テーマgemの作者からなるコンマ区切りの文字列。 |
|
テーマgemspecで指定されたテーマgemの説明または概要。 |
|
現在のテーマのバージョン文字列。 |
|
テーマの実行時依存関係のリスト。 |
|
テーマgemspecで定義されているキーバリューペアのマッピング。 |
ページネーター
変数 | 説明 |
---|---|
|
現在のページ番号。 |
|
1ページあたりの投稿数。 |
|
現在のページで使用可能な投稿。 |
|
投稿の総数。 |
|
ページの総数。 |
|
前のページの番号。前のページが存在しない場合は`nil`。 |
|
前のページへのパス。前のページが存在しない場合は`nil`。 |
|
次のページの番号。次のページが存在しない場合は`nil`。 |
|
次のページへのパス。次のページが存在しない場合は`nil`。 |
ページネーター変数の可用性
これらはインデックスファイルでのみ使用できますが、`/blog/index.html`などのサブディレクトリに配置することもできます。