页面
Syntax
PAGE.Pages
Returns
page.Pages
Pages
方法可用于 Page
对象的这些页面种类: home
, section
, taxonomy
, 和 term
。这些页面种类的模板接收上下文中的页面集合。
在模板中遍历页面集合:
{{ range .Pages.ByTitle }}
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
{{ end }}
考虑以下内容结构:
content/
├── lessons/
│ ├── lesson-1/
│ │ ├── _index.md
│ │ ├── part-1.md
│ │ └── part-2.md
│ ├── lesson-2/
│ │ ├── resources/
│ │ │ ├── task-list.md
│ │ │ └── worksheet.md
│ │ ├── _index.md
│ │ ├── part-1.md
│ │ └── part-2.md
│ ├── _index.md
│ ├── grading-policy.md
│ └── lesson-plan.md
├── _index.md
├── contact.md
└── legal.md
当渲染主页时,Pages
方法返回:
contact.md
legal.md
lessons/_index.md
当渲染课程页时,Pages
方法返回:
lessons/grading-policy.md
lessons/lesson-plan.md
lessons/lesson-1/_index.md
lessons/lesson-2/_index.md
当渲染 lesson-1 时,Pages
方法返回:
lessons/lesson-1/part-1.md
lessons/lesson-1/part-2.md
当渲染 lesson-2 时,Pages
方法返回:
lessons/lesson-2/part-1.md
lessons/lesson-2/part-2.md
lessons/lesson-2/resources/task-list.md
lessons/lesson-2/resources/worksheet.md
在最后的例子中,集合中包括资源子目录中的页面。该目录不是一个部分—它不包含 _index.md 文件。其内容属于 lesson-2 部分。
{{ range .Site.Pages.ByTitle }}
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
{{ end }}