Hugo でサイト内の全ページの一覧を表示する (.Site.Pages)

    .Site.Pages を参照すると、サイト内のすべてのページを示す Page 配列を取得することができます。 下記はホームページテンプレート内で、サイト内のすべてのページのリンクを表示する例です。

    layouts/index.html
    <h3>全ページのリスト</h3>
    <ul>
      {{ range .Site.Pages }}
        <li><a href="{{ .RelPermalink }}">{{ .Title }}</a>
      {{ end }}
    </ul>

    .Site.Pages はデフォルトで、日時 (.Date) の一番新しいものから昇順に並べられた Page 配列を返します。

    ☝️ ワンポイント .Site.Pages は、現在選択中の言語内でのページ一覧を返します。 全言語を含むページ一覧を取得したいときは、代わりに .Site.AllPages を参照してください。