サイト変数
すべてではありませんが、多くのサイト全体の変数がサイト設定で定義されます。 ただし、Hugo には、テンプレート内のグローバル値に簡単にアクセスできるように、多数の組み込み変数が用意されています。
On this page
以下はサイトレベル (別名 「グローバル」) 変数のリストです。 これらの変数の多くはサイトの 設定ファイル で定義されますが、他の変数は Hugo のコアに組み込まれており、テンプレートで便利に使用できます。
パーシャル からサイトオブジェクトを取得する
以下のすべてのメソッド、たとえば .Site.RegularPages は、グローバルな site
関数からもアクセスできます。たとえば site.RegularPages は、 Page オブジェクトを簡単に利用できないパーシャルで便利です。
.
サイト変数リスト
- .Site.AllPages
- 翻訳に関係ない、すべてのページの配列です。
- .Site.BaseURL
- サイト設定で定義された、サイトのベース URL です。
- .Site.BuildDrafts
- サイト設定で定義された、ドラフトをビルドするかどうかを示すブール値 (デフォルトは
false) です。 - .Site.Copyright
- サイト設定で定義された、 Web サイトの著作権を表す文字列です。
- .Site.Data
- カスタムデータについては、「データテンプレート」 を参照してください。
- .Site.DisqusShortname
- サイト設定で定義された、 Disqus ショートコードのショートネームを表す文字列です。
- .Site.GoogleAnalytics
- サイト設定で定義定義された、 Google アナリティクスのトラッキング コードを表す文字列です。
- .Site.Home
- ホームページの ページオブジェクト への参照です。
- .Site.IsMultiLingual
- このサイトに複数の言語があるかどうか。 詳細については、「多言語対応」 を参照してください。
- .Site.IsServer
- Hugo の組み込みサーバーでサイトを提供するかどうかを示すブール値です。 詳細については、
hugo serverを参照してください。 - .Site.Language.Lang
- 現在のロケールの言語コード (たとえば、
en) を指定します。 - .Site.Language.LanguageName
- 完全な言語名 (たとえば、
English) を指定します。 - .Site.Language.Weight
.Site.Languagesリストでの順序を定義する重みです。- .Site.Language
- Web サイトのレンダリングに現在使用されている言語を示します。 このオブジェクトの属性は、サイト設定の言語定義で設定されます。
- .Site.LanguageCode
- サイト設定で定義された言語タグを表す文字列です。
- .Site.LanguagePrefix
- これは、正しい言語を指すように URL にプレフィックスを付けるために使用できます。 定義された言語が 1 つだけの場合でも機能します。 関数 absLangURL および relLangURL も参照してください。
- .Site.Languages
- (定義された重みで並べられた) 言語の順序付きリストです。
- .Site.LastChange
- サイトが最後に変更された日時を表す文字列です。 この文字列は、コンテンツページの フロントマターの
date変数 に基づいています。 - .Site.Menus
- サイト内のすべてのメニューです。
- .Site.Pages
- 日付順に並べられたすべてのコンテンツの配列で、最新のものを先頭にします。 この配列には、現在の言語のページのみが含まれます。
.Site.Pagesを参照してください。 - .Site.RegularPages
- 通常 ページのコレクションへのショートカットです。
.Site.RegularPagesは、where .Site.Pages "Kind" "page"と同等です。.Site.Pagesを参照してください。 - .Site.Sections
- サイトのトップレベルディレクトリです。
- .Site.Taxonomies
- サイト全体の タクソノミー です。また、「任意のテンプレートからタクソノミーデータにアクセスする」 のセクションも参照して下さい。
- .Site.Title
- サイトのタイトルを表す文字列です。
.Site.Params 変数
.Site.Params は、サイト設定の params セクションからの値を保持するコンテナです。
例: .Site.Params
以下の hugo.[yaml|toml|json] は、description のサイト全体のパラメータを定義します。
パーシャル
の中で .Site.Params を使用すると、デフォルトのサイトの説明文を呼び出すことができます。
layouts/partials/head.html
<meta name="description" content="{{ if .IsHome }}{{ $.Site.Params.description }}{{ else }}{{ .Description }}{{ end }}" />.Site.Pages 変数
.Site.Pages と .Pages の比較
- 通常 ページは、「投稿」ページまたは「コンテンツ」ページです。
- リーフバンドル は、通常ページです。
- リスト ページは、通常 ページとその他の リスト ページをリストできます。 例としては、ホームページ、セクションページ、タクソノミー (
/tags/) および 用語 (/tags/foo/) ページがあります。- ブランチバンドル は、リスト ページです。
.Site.Pages- サイトの すべて のページ、 通常 ページ、セクション、分類など、のコレクションで、すべてのスーパーセットです。
.Site.RegularPages- 通常 ページのみのコレクションです。
上記の .Site. .. ページのコレクションには、テンプレート内の任意のスコープからアクセスできます。
以下の変数は、現在の リスト ページのスコープからのみ、ページのコレクションを返します。
.Pages- 現在の リスト ページの下にある、 通常 ページと 第 1 レベルのみ のセクションページのコレクションです。
.RegularPages- 現在の リスト ページの下にある 通常 ページのみのコレクションです。 これは、ネストされた セクション/リスト ページ内の通常ページを 除外します (これらは、
_index.mdファイルを含むサブディレクトリです)。 .RegularPagesRecursive- リストページの下にある すべての 通常 ページのコレクションです。これは、ネストされた セクション/リスト ページ内の通常ページを 含みます。
- 注意
- 通常 ページのスコープから、
.Pagesと.RegularPagesは空のスライスを返します。