如何在 Hugo 中列出一个部分的所有页面
How to List All Pages of a Section in Hugo
我正在尝试列出头版部分的页面。这不应该太难;例如,具有以下层次结构(通用名称):
/content/
|_ test-page.md
|_ /section-name/
|_ page1.md
|_ page2.md
使用以下循环:
{{ range .Pages }}
...
{{ end }}
将 /section-name/
的列表页显示为 "section-names"
。
好的,好吧,我在网上查找了其他解决方案。例如:
{{ range first 5 (where .Data.Pages "Section" "in" (slice "section-name")) }}
但这还是returns"section-names"
.
好的,所以 documentation 有 where 子句和分组的例子。例如,{{ range (.Pages.GroupBy "Section").Reverse }}
。让我们尝试一个类似的概念:
{{ range (.Pages.GroupBy "Section") }}
{{ .Key }}
{{ range .Pages }}
{{ .Title }}
{{ end }}
{{ end }}
这似乎会打印每个键,然后打印该键下的每一页。但是,它打印 section-name Section-names
而不是我希望的 section-name page1 page2
.
什么?
此外,使用像 {{ range .Pages }}
这样的简单循环,为什么 test
不会在创建节文件夹后立即出现?我不明白 Hugo 似乎固执地只给我看版块页面。
这有效:
{{ range (where .Site.Pages "Section" "programming") }}
{{ range .Pages }}
{{ .Title }}
{{ end }}
{{ end }}
我正在尝试列出头版部分的页面。这不应该太难;例如,具有以下层次结构(通用名称):
/content/
|_ test-page.md
|_ /section-name/
|_ page1.md
|_ page2.md
使用以下循环:
{{ range .Pages }}
...
{{ end }}
将 /section-name/
的列表页显示为 "section-names"
。
好的,好吧,我在网上查找了其他解决方案。例如:
{{ range first 5 (where .Data.Pages "Section" "in" (slice "section-name")) }}
但这还是returns"section-names"
.
好的,所以 documentation 有 where 子句和分组的例子。例如,{{ range (.Pages.GroupBy "Section").Reverse }}
。让我们尝试一个类似的概念:
{{ range (.Pages.GroupBy "Section") }}
{{ .Key }}
{{ range .Pages }}
{{ .Title }}
{{ end }}
{{ end }}
这似乎会打印每个键,然后打印该键下的每一页。但是,它打印 section-name Section-names
而不是我希望的 section-name page1 page2
.
什么?
此外,使用像 {{ range .Pages }}
这样的简单循环,为什么 test
不会在创建节文件夹后立即出现?我不明白 Hugo 似乎固执地只给我看版块页面。
这有效:
{{ range (where .Site.Pages "Section" "programming") }}
{{ range .Pages }}
{{ .Title }}
{{ end }}
{{ end }}