存放一些hugo
配置版模會用到的筆記,
非模板內容參見 hugo。
文章 Tags
透過以下版模顯示文章的 tags
。
{{ with .Params.tags }}
{{ range . }}
<a href="{{ "tags/" | absURL }}{{ . | urlize }}">{{ . }}</a>
{{ end }}
{{ end }}
關於 Tags 頁的模板透過 layouts/_default/terms.html
設定
關於條件判斷式
hugo 的 if
當中的 and
or
是採用波蘭表達式 (Polish Notation),因此需要把運算子放在前面。
Pages
如果 Section 會多出一個 Section,可能是因為使用到 .Site.Pages
而非 .Site.RegularPages
Pagination
控制分頁的功能,可以根據模板設定顯示的數量之類的功能。
Pluralize
有的時候為了避免標題變成複數型態,可以關閉 Pluralize
只需要在 config.toml
加入
pluralizelisttitles = "false"
並且輸入
hugo config
Format
判斷是否在開發伺服器上
{{ if .Site.IsServer }}
{{ end }}
根據修改日期排序
可以用以下寫法
{{ $sortedPosts := .Data.Pages.ByLastmod.Reverse }}
{{ $paginator := .Paginate $sortedPosts }}
{{ range $paginator.Pages }}
{{ end }}
其實我們可以直接在 where 後面加上 .ByLastmod.Reverse
,因為他會是一個 .Pages
的型別,範例如下
{{ range first 5 (where .Site.RegularPages "Section" .Section).ByLastmod.Reverse }}
參考
Range
可以透過 {{ range first 3 (where ...)}}
之類的語法來取得前三個
清單
Lists
: 目前只有發現tags
採用這個頁面Taxonomy Lists
: 如tags
點進去的每個tag
的頁面。Section Lists
: 如每個category
的頁面。
以上Section
與Taxonomy
都有備用與原本的板型,預設套用list.html
,
詳情參考文檔。
參考
- Add Tags to Your Hugo Blog Using Taxonomies
- [Content List Template](Add Tags to Your Hugo Blog Using Taxonomies)
Table of Contents
顯示內容清單,只在模板作用。
{{ .TableOfContents }}
其他
- Make a Hugo blog from scratch 一堆
hugo
模板的片段
Hugo