ページ設定したい(frontmatter
)
1title = "タイトル"
2date = "日付"
3images = ["画像パス", "画像パス"]
4tags = ["hugo", "frontmatter"]
5draft = true
ファイルの先頭に記述するフロントマターで ページごとの設定を記述できます。 フロントマターで設定した変数は、テンプレートで使うことができます。 また、ユーザー定義の変数も設定できます。
HugoではTOML、YAML、JSON、ORGの4つの形式でフロントマターを記述できます。 このドキュメントのサンプルはTOML形式で記述しています。
タイトルしたい
1title = "正式なタイトル"
2linktitle = "リンク用のタイトル"
<ul>
{{ range .Pages.ByLinkTitle }}
<li>{{ .LinkTitle }}</li>
{{ end }}
</ul>
.LinkTitle
を使ってリンク用の短いタイトルを設定できます。
関連コンテンツやサイドバーなどにリンク一覧を生成する場合に使ったりします。
.LinkTitle
が設定されていない場合は.Title
が表示されます。
日付したい
1date = "2023-10-26T15:20:00+09:00"
2publishdate = "2023-10-26T15:20:00+09:00"
3lastmod = "2023-10-26T15:40:00+09:00"
4expirydate = "2024-10-26T15:40:00+09:00"
さまざまな日付を設定できます。 日付フォーマットはISO8601形式を採用し、タイムゾーン情報もつけるとよいでしょう。
下書きしたい
1draft = true
ページの状態を「下書き」に設定できます。 下書き状態のページはレンダリングされません。
確認用に表示したい場合は、hugo --buildDraft
オプションを使います。
日本語したい
1isCJKLanguage = true
日本語などを使う場合は設定しましょう。
マルチバイト文字に対して、.WordCount
や.Count
が正確になるらしいです。
関連画像したい
1images = [
2 "画像のパス",
3 "画像のパス",
4 "画像のパス",
5 ]
ページに関連する画像がある場合は、images
で画像パスをリスト型で設定できます。
この変数は、OGP用やTwitter Cards用、Schema用の内部テンプレートでも使われています。
注釈
これらの内部テンプレートの中では、images
が明示的に設定されていない場合には、リソース(=$.Resources
)にあるfeatureやcover、thumbnailがファイル名に含まれる画像ファイルを探すようになっています。