パーマリンク
パーマリンクは、ページ、投稿、またはコレクションの出力パスです。ソースコードのディレクトリと出力のディレクトリを異なる構造にすることができます。
フロントマター
パーマリンクを設定する最も簡単な方法は、フロントマターを使用することです。フロントマターでpermalink
変数に必要な出力パスを設定します。
たとえば、サイト上に/my_pages/about-me.html
にあるページがあり、出力URLを/about/
にしたいとします。ページのフロントマターでは、以下のように設定します。
---
permalink: /about/
---
グローバル設定
サイトのすべてのページのフロントマターでパーマリンクを設定するのは面倒です。幸いなことに、Jekyllでは_config.yml
でグローバルにパーマリンク構造を設定できます。
グローバルパーマリンクを設定するには、_config.yml
でpermalink
変数を使用します。必要な出力にプレースホルダーを使用できます。例えば
permalink: /:categories/:year/:month/:day/:title:output_ext
ページとコレクション(posts
とdrafts
を除く)には時間とカテゴリがないことに注意してください(ページの場合、上記の:title
は:basename
と同等です)。パーマリンクスタイルのこれらの側面は、出力では無視されます。
たとえば、posts
コレクションのパーマリンクスタイル/:categories/:year/:month/:day/:title:output_ext
は、ページとコレクション(posts
とdrafts
を除く)では/:title.html
になります。
プレースホルダー
使用可能なプレースホルダーの完全なリストを以下に示します。
変数 | 説明 |
---|---|
|
投稿のファイル名から取得した4桁の年。ドキュメントの |
|
投稿のファイル名から取得した世紀のない年。(00..99) ドキュメントの |
|
投稿のファイル名から取得した月。(01..12) ドキュメントの |
|
投稿のファイル名から取得した、先頭のゼロがない月。ドキュメントの |
|
3文字の月の略語、例:「1月」。 |
|
完全な月の名前、例:「1月」。 |
|
投稿のファイル名から取得した月の日。(01..31) ドキュメントの |
|
投稿のファイル名から取得した、先頭のゼロがない月の日。ドキュメントの`date`フロントマターで上書きできます。 |
|
投稿のファイル名から取得した、先頭のゼロが付いた年の通算日。(001..366) |
|
1月と12月の最大3日間、月の年と異なる場合がある週の年 |
|
現在の年の週番号。1月は、その週の大部分の日が含まれる最初の週から始まります。(01..53) |
|
月曜日から始まる曜日。(1..7) |
|
曜日の3文字の略語、例:「日」。 |
|
曜日の名前、例:「日曜日」。 |
|
投稿の |
|
投稿の |
|
投稿の |
|
ドキュメントのファイル名から取得したタイトル。ドキュメントの |
|
ドキュメントのファイル名からスラッグ化されたタイトル(数字と文字以外の文字はすべてハイフンに置き換えられます)。ドキュメントの |
|
この投稿に指定されたカテゴリ。投稿に複数のカテゴリがある場合、Jekyllは階層を作成します(例: |
|
この投稿に指定されたカテゴリですが、*スラッグ化*されています。カテゴリが複数の単語で構成されている場合、Jekyllはすべてのアルファベットを小文字に変換し、英数字以外の文字をハイフンに置き換えます。(例: 投稿に複数のカテゴリがある場合、Jekyllは階層を作成します(例: |
|
出力ファイルの拡張子。(デフォルトで含まれており、通常は不要です。) |
組み込みフォーマット
投稿の場合、Jekyllは便宜上、次の組み込みスタイルも提供します。
パーマリンクスタイル | URLテンプレート |
---|---|
|
|
|
|
|
|
|
|
|
|
permalink: /:categories/:year/:month/:day/:title/
と入力する代わりに、permalink: pretty
と入力するだけで済みます。
フロントマターによるパーマリンクの指定
組み込みのパーマリンクスタイルは、フロントマターでは認識されません。そのため、permalink: pretty
は機能しません。
コレクション
コレクション(posts
とdrafts
を含む)の場合、_config.yml
のコレクション設定でグローバルパーマリンクを上書きするオプションがあります。
collections:
my_collection:
output: true
permalink: /:collection/:name
コレクションでは、次のプレースホルダーを使用できます。
変数 | 説明 |
---|---|
|
含まれているコレクションのラベル。 |
|
コレクションのディレクトリを基準としたドキュメントへのパス。ドキュメントの基本ファイル名を含みます。 |
|
ドキュメントの基本ファイル名。スペースと英数字以外の文字のすべてのシーケンスはハイフンに置き換えられます。 |
|
|
|
出力ファイルの拡張子。(デフォルトで含まれており、通常は不要です。) |
ページ
ページの場合、グローバルパーマリンクを上書きするにはフロントマターを使用する必要があり、_config.yml
のフロントマターのデフォルトでパーマリンクを設定した場合、それは無視されます。
ページでは、次のプレースホルダーを使用できます。
変数 | 説明 |
---|---|
|
サイトのソースディレクトリを基準としたページへのパス。ページの基本ファイル名は除きます。 |
|
ページの基本ファイル名。 |
|
出力ファイルの拡張子。(デフォルトで含まれており、通常は不要です。) |