在hugo中使用分区列表中的无头页面

  • 本文关键字:分区 hugo 列表 hugo
  • 更新时间 :
  • 英文 :


我需要构建一个由一些静态页眉材料、静态页脚材料和用户管理内容的几个部分组成的部分页面。这个用户管理的内容是零碎的,因此不应该有永久链接。

我认为一个很好的方法可能是使用无头页面。

这样做的话,这些片段必须有一个带有index.md的目录,并且应该可以使用.Site.GetPage运算符进行访问。

我正在努力弄清楚如何使用.Site.GetPage来获得要迭代的页面列表。将有2..n个用户节,如果内容模块的数量发生变化,我不想重新生成节的模板。

我假设使用.Site.GetPage查询多个页面有一些魔力,或者有一个完全不同的运算符。

或者我完全误解了如何使用无头页面。

这是我的部分模板(../layouts/the-range/section.html(:

{{ define "main" }}
<div id="page-wrapper">
<div class="halfhero" id="map"></div>
</div>
{{ $sections := .Site.GetPage "/the-range/*" }}
<!-- leaf content at .../content/the-range/*/*.md -->
{{ range $sections }}
<section class="range-section">
<div class="section-content">
{{.Content}}
</div>
<img src="{{.Site.BaseURL}}{{.Params.images}}">
</section>
{{ end }}
{{ end }} 

无头内容只是作为叶束的一系列标记文件。

通过Hugo社区https://discourse.gohugo.io/t/using-headless-pages-in-section-lists-in-hugo/15275/2

给定这样的结构:

content/headless/
├── index.md     # headless = true in front matter
├── five.md
├── four
│   └── index.md
├── one
│   └── index.md
├── three
│   └── index.md
└── two
└── index.md

你可以做:

{{ $headlessbundle := .Site.GetPage "/headless" }}
{{ range ( $headlessbundle.Resources.ByType "page" ) }} <br>
{{.}}
{{ end }}

哪个应该输出:

Page(/headless/five.md) 
Page(/headless/four/index.md) 
Page(/headless/three/index.md) 
Page(/headless/two/index.md) 
Page(/headless/one/index.md)

最新更新