Param

Page 對象上的 Param 方法會查找指定的 KEY 是否存在於頁面參數中,並返回對應的值。如果找不到該 KEY,則會查找網站參數。如果在兩者中都沒有找到,則 Param 方法會返回 nil

網站和主題開發者通常會在站點層級設置參數,允許內容作者在頁面層級覆蓋這些參數。

例如,要在每個頁面上顯示目錄,並允許作者根據需要隱藏目錄:

配置:

hugo.
     
params:
  display_toc: true
[params]
  display_toc = true
{
   "params": {
      "display_toc": true
   }
}

內容:

content/example.md
     
---
date: "2023-01-01"
draft: false
params:
  display_toc: false
title: Example
---
+++
date = 2023-01-01
draft = false
title = 'Example'
[params]
  display_toc = false
+++
{
   "date": "2023-01-01",
   "draft": false,
   "params": {
      "display_toc": false
   },
   "title": "Example"
}

模板:

{{ if .Param "display_toc" }}
  {{ .TableOfContents }}
{{ end }}

Param 方法返回與給定 KEY 關聯的值,無論該值是 truthy 還是 falsy。如果您需要忽略 falsy 值,可以使用以下構造:

{{ or .Params.foo site.Params.foo }}