ビルドオプション
ビルドオプションは、サイトをビルドするときに Hugo が特定のページをどのように処理する必要があるかを定義するのに役立ちます。
これらは、_build という名前の予約されたフロントマター オブジェクトに格納され、以下のようなデフォルトが設定されています。
render
値が always の場合、そのページは公開ページとして扱われ、専用の出力ファイル (index.html など) とパーマリンクが保持されます。
Hugo 0.76.0 で、このプロパティをブール値から列挙型に拡張しました。 有効な値は以下のとおりです。
- never
- ページは、どのページコレクションにも含まれません。
- always (デフォルト)
- ページはディスクにレンダリングされ、
RelPermalinkなどを取得します。 - link
- ページはディスクにレンダリングされませんが、
RelPermalinkを取得します。
list
Hugo 0.68.0 で、このプロパティをブール値から列挙型に拡張したことに注意してください。
有効な値は以下のとおりです。
- never
- ページは、どのページコレクションにも含まれません。
- always (デフォルト)
- ページはすべてのページコレクション、たとえば、
site.RegularPages、$page.Pagesなどに含まれます。 - local
- ページは、任意の local ページコレクション、たとえば
$page.RegularPagesや$page.Pagesに含まれます。この使用例の 1 つは、完全にナビゲート可能で、かつ、ヘッドレスのコンテンツ セクションを作成することです。
true の場合、ページはプロジェクトのコレクションの一部として扱われ、必要に応じて Hugo のリストメソッド (.Pages、.RegularPages など) で返されるようになります。
publishResources
true に設定すると、バンドル内のリソース
が公開されます。
これを false に設定すると、引き続きリソースがオンデマンドで公開されますが (リソースの .Permalink または .RelPermalink がテンプレートから呼び出された場合)、それ以外のリソースはスキップされます。
.GetPage
メソッドを使用して利用することができます。
ユースケースの例
ページを公開しない
プロジェクトでは、フロントマターとボディに “Who We Are” というコンテンツファイルが必要で、ホームページで使用されますが、それ以外の場所では使用されません。
<section id="who-we-are">
{{ with site.GetPage "who-we-are" }}
{{ .Content }}
{{ end }}
</section>ページを公開せずに一覧表示する
Web サイトは、コンテンツファイルとして利用できる 100 の「お客様の声」のうちのいくつかを公開せずに紹介する必要があります。
すべての「お客様の声」にビルドオプションを設定しないようにするためには、「お客様の声」セクションのコンテンツファイルで cascade
を使用できます。
<section id="testimonials">
{{ range first 5 .Pages }}
<blockquote cite="{{ .Params.cite }}">
{{ .Content }}
</blockquote>
{{ end }}
</section>