在 hugo 中按类别列出所有页面

List all pages by categories in hugo

我在 hugo 中有结构:

content
├── 1.md
├── a
│   ├── 2.md
│   └── 3.md
└── b
    └── 4.md

我想要的菜单列表如下:

我现在在用

<ul>
    {{ range .Site.RegularPages }}
        <li>
            <a href="{{ .Permalink }}">{{ .Name }}</a>
        </li>
    {{ end }}
</ul>

这只给我:

最后格式化你还在使用的数据HTML,所以嵌套列表的规则仍然适用,例如:

<ul>
    {{ range .OuterList }}
        <li>
            <a href="#">{{ .OuterListItem }}</a>
            {{if gt (len .OuterListItem.InnerItems) 0}}
            <ul>
               {{ range .OuterListItem.InnerItems }}
                  <li> {{ .InnerItem }} </li>
               {{ end }}
            </ul>
            {{ end }}
        </li>
    {{ end }}
</ul>

layouts/partials/walk.html:

<ul>
  {{ range .Pages.ByTitle }}
    <li>
      <a href="{{ .RelPermalink }}">{{ .Title }}</a>
      {{ if .Pages }}
        {{ partial "walk.html" . }}
      {{ end }}    
    </li>
  {{ end }}
</ul>

content/section/_index.md:

---
title: Section Name
---

layouts/index.html

{{ partial "walk.html" }}