サイト変数
すべてではありませんが、多くのサイト全体の変数がサイト設定で定義されます。 ただし、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
は空のスライスを返します。