Hugo アーキタイプをもっと活用する
Posted: | Tags: archetype, go-template, hugo, static-site-generator
目次
はじめに
Hugo には hugo new コマンドで Markdown 雛形を生成する仕組みがあります。
そのテンプレート(アーキタイプ)は Go テンプレート構文を使えるため、
- 日付を好きなフォーマットで書き出す
- サイト設定ファイル(
hugo.tomlなど)の値を差し込む
といった“ちょっとした自動化”が簡単に実現できます。 この記事では実際のテンプレート例を交えながら手順を解説します。
日付フォーマットを自由に変える
基本
date: '{{ time.Now.Format "2006-01-02" }}'
time.Now: 生成時点の日時Formatの引数は Go 固有の書式 (2006-01-02がYYYY-MM-DD相当)
よく使うパターン
| 目的 | 書式 | 出力例 |
|---|---|---|
| 時分まで入れたい | time.Now.Format "2006-01-02 15:04" | 2025-04-23 13:15 |
| ISO 8601 (JST) | (time.Now.In "Asia/Tokyo").Format "2006-01-02T15:04:05+09:00" | 2025-04-23T13:15:00+09:00 |
| 人が読む日付 | time.Now | time.Format ":date_medium" | 2025/04/23 |
.Site 変数で共通情報を自動入力
archetypes/ でも .Site オブジェクトにアクセスできます。
まずサイト設定ファイルに共通値を持たせましょう。