2015-08-16 44 views
0

聲明:這是一個在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頁面模板,不犧牲對內容創建者輕鬆定製降價內容的能力。

這些方法是否適用於現有技術,我只是在文檔中缺少一些核心概念?理想情況下,我想能夠做這些不止一個,因此該網站的主頁上可以通過短碼櫻桃挑選一些內容列表,但幾節將有自己的孩子目錄的自動分組名單。這樣內容創作者可以自由添加小節,而不會犧牲微調主頁的能力。

回答

0
  • 您可以製作一個代碼爲.Page.Site.Pages的短代碼 - 但請注意,您可以從迭代的頁面訪問的內容有限制。僅限元數據,而不是頁面內容本身。我稱這the chicken or the egg problem
  • 沒有一個頁面樹結構雨果的概念,我不知道你怎麼能讓一個了,無論是。
相關問題