urls.URLize

anchorizeurlize 函數相似:

  • 使用 anchorize 函數來生成 HTML 的 id 屬性值
  • 使用 urlize 函數來清理字串以用於 URL

例如:

{{ $s := "A B C" }}
{{ $s | anchorize }} → a-b-c
{{ $s | urlize }} → a-b-c

{{ $s := "a b   c" }}
{{ $s | anchorize }} → a-b---c
{{ $s | urlize }} → a-b-c

{{ $s := "< a, b, & c >" }}
{{ $s | anchorize }} → -a-b--c-
{{ $s | urlize }} → a-b-c

{{ $s := "main.go" }}
{{ $s | anchorize }} → maingo
{{ $s | urlize }} → main.go

{{ $s := "Hugö" }}
{{ $s | anchorize }} → hugö
{{ $s | urlize }} → hug%C3%B6

範例

使用 urlize 函數為 分類詞彙 頁面建立連結。

假設以下網站配置:

[taxonomies]
author = 'authors'

以及以下 Front Matter:

title = 'Les Misérables'
authors = ['Victor Hugo']

發布的網站將具有如下結構:

public/
├── authors/
│   ├── victor-hugo/
│   │   └── index.html
│   └── index.html
├── books/
│   ├── les-miserables/
│   │   └── index.html
│   └── index.html
└── index.html

為分類詞彙頁面建立連結:

{{ $taxonomy := "authors" }}
{{ $term := "Victor Hugo" }}
{{ with index .Site.Taxonomies $taxonomy (urlize $term) }}
  <a href="{{ .Page.RelPermalink }}">{{ .Page.LinkTitle }}</a>
{{ end }}

若需生成與某內容頁面相關的分類詞彙頁面列表,可使用 Page 物件的 GetTerms 方法。