相关
语法
PAGES.Related PAGE
PAGES.Related OPTIONS
返回值
page.Pages
基于 front matter,Hugo 使用多个因素来识别与给定页面相关的内容。使用默认的相关内容配置,或将结果调整到所需的索引和参数。请参阅详细信息。
传递给 Related
方法的参数可以是 Page
或选项映射。例如,要传递当前页面
layouts/_default/single.html
{{ with .Site.RegularPages.Related . | first 5 }}
<p>Related pages:</p>
<ul>
{{ range . }}
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
{{ end }}
</ul>
{{ end }}
要传递选项映射
layouts/_default/single.html
{{ $opts := dict
"document" .
"indices" (slice "tags" "keywords")
}}
{{ with .Site.RegularPages.Related $opts | first 5 }}
<p>Related pages:</p>
<ul>
{{ range . }}
<li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
{{ end }}
</ul>
{{ end }}
选项
- indices
- (
slice
)要在其中搜索的索引。 - document
- (
page
)要查找相关内容的页面。指定选项映射时为必需。 - namedSlices
- (
slice
)要搜索的关键字,使用keyVals
函数表示为KeyValues
切片。
- fragments
- (
slice
)用于配置为“fragments”类型的索引的特殊关键字列表。这将匹配文档的片段标识符。
一个使用上述所有内容的示例
{{ $page := . }}
{{ $opts := dict
"indices" (slice "tags" "keywords")
"document" $page
"namedSlices" (slice (keyVals "tags" "hugo" "rocks") (keyVals "date" $page.Date))
"fragments" (slice "heading-1" "heading-2")
}}