hugo/content/en/methods/page/Sites.md
Bjørn Erik Pedersen 9b0050e9aa Squashed 'docs/' content from commit 5c085a37b
git-subtree-dir: docs
git-subtree-split: 5c085a37b297bf12f59efeaae591418ec025c10d
2024-01-27 10:48:33 +01:00

1.4 KiB

title description categories keywords action
Sites Returns a collection of all Site objects, one for each language, ordered by language weight.
related returnType signatures
methods/page/Site
page.Sites
PAGE.Sites

This is a convenience method to access .Site.Sites.

With this site configuration:

{{< code-toggle file=hugo >}} defaultContentLanguage = 'de' defaultContentLanguageInSubdir = false

[languages.de] languageCode = 'de-DE' languageDirection = 'ltr' languageName = 'Deutsch' title = 'Projekt Dokumentation' weight = 1

[languages.en] languageCode = 'en-US' languageDirection = 'ltr' languageName = 'English' title = 'Project Documentation' weight = 2 {{< /code-toggle >}}

This template:

<ul>
  {{ range .Sites }}
    <li><a href="{{ .Home.Permalink }}">{{ .Title }}</a></li>
  {{ end }}
</ul>

Produces a list of links to each home page:

<ul>
  <li><a href="https://example.org/de/">Projekt Dokumentation</a></li>
  <li><a href="https://example.org/en/">Project Documentation</a></li>
</ul>

To render a link to home page of the primary (first) language:

{{ with .Sites.First }}
  <a href="{{ .Home.Permalink }}">{{ .Title }}</a>
{{ end }}

This is equivalent to:

{{ with index .Sites 0 }}
  <a href="{{ .Home.Permalink }}">{{ .Title }}</a>
{{ end }}