聲明:這是一個在Hugo forum上沒有回答的問題的轉貼。如果那不太酷,請告訴我,我將刪除/編輯它。我們可以在內容頁面中嵌入一個(或多個)發佈列表嗎?
我正在嘗試使用Hugo(靜態網站生成器)來替換公司的營銷網站。我可能會犯這個錯誤,所以我會試圖在我的黑客入侵解決方案之前表達我的願望。
我的目標
對於我公司的網站,我們有幾類迭代的內容,如「案例研究」和「顧問」。這些類別已經在樹中組織。
我想創建* .md頁面,允許非技術性內容創建者自定義頁眉頂部的頁眉和一些內容,在下面我想添加一系列章節,其中每個列出了其中一個子目錄的帖子。
一個例子輸出可能看起來像:
<head>
<title>About us</title>
</head>
<body>
<!-- Marketing content generated from /content/about/index.md -->
<h1>About us</h1>
<!-- Leadership team list generated automatically from /content/about/leaders/* -->
<section>
<h2>Leadership team</h2>
<ul>
<li>
<!-- Content from /content/about/leaders/first_last.md* -->
</li>
</ul>
</section>
<!-- Foo list generated automatically from /content/about/foo/* -->
<section>
<h2>Foo</h2>
<ul>
<li>
<!-- Content from /content/about/foo/bar.md* -->
</li>
</ul>
</section>
</body>
如何我做現在
我創建自定義佈局每個基於準列表索引頁,和佈局使用呈現每個與自定義.Params.type匹配的頁面的部分。所以我的/content/about/index.md頁面在/layouts/about.html文件中大量定製。
我覺得應該有一個更好的方式做以下的至少一個:
- 使用可以訪問.Site.Pages對象一個短代碼,所以我的內容創作者能寫出像
{{< list 'leader' >}}
在側面的任何地方內容頁獲得的所有內容與.Params.type = 'leader'
- 列表使用自定義佈局,但通過該頁面的「孩子」,而不是通過過濾類型的所有頁面的迭代。
- 使用list.html頁面模板,不犧牲對內容創建者輕鬆定製降價內容的能力。
這些方法是否適用於現有技術,我只是在文檔中缺少一些核心概念?理想情況下,我想能夠做這些不止一個,因此該網站的主頁上可以通過短碼櫻桃挑選一些內容列表,但幾節將有自己的孩子目錄的自動分組名單。這樣內容創作者可以自由添加小節,而不會犧牲微調主頁的能力。