Paginate
分頁頁面集合。
Syntax
PAGE.Paginate COLLECTION [N]
Returns
page.Pager
分頁是將列表頁面拆分為兩個或更多分頁器的過程,其中每個分頁器包含頁面集合的子集和指向其他分頁器的導航鏈接。
默認情況下,每個分頁器上的元素數量由您的 站點配置 確定。默認值為 10。通過在調用 Paginate 方法時提供第二個參數(整數)來覆蓋該值。
Page 對象上還有一個 Paginator 方法,但它既不能過濾也不能排序頁面集合。
Paginate 方法更靈活。
layouts/section.html
{{ $pages := where .Site.RegularPages "Section" "articles" }}
{{ $pages = $pages.ByTitle }}
{{ range (.Paginate $pages 7).Pages }}
<h2><a href="{{ .RelPermalink }}">{{ .Title }}</a></h2>
{{ end }}
{{ partial "pagination.html" . }}在上面的示例中,我們:
- 構建頁面集合
- 按標題排序集合
- 分頁集合,每個分頁器 7 個元素
- 遍歷分頁後的頁面集合,渲染指向每個頁面的鏈接
- 調用嵌入的分頁模板以在分頁器之間創建導航鏈接
請注意,分頁的結果會被緩存。一旦調用了 Paginator 或 Paginate 方法,分頁後的集合就是不可變的。這些方法的額外調用將無效。