Page

Paginate

返回对给定页面集合分页后得到的分页器。

签名
PAGE.Paginate COLLECTION [N]
返回类型
page.Pager

分页(pagination)是指把一个列表页面拆分成两个或多个分页器(pager),每个分页器包含页面集合的一个子集,以及指向其他分页器的导航链接。

默认情况下,每个分页器上的元素个数由你的[项目配置][]决定,默认值为 10。调用 Paginate 方法时传入第二个参数(一个整数)即可覆盖该值。

你可以在首页、section、分类法和术语模板中调用分页。

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" . }}

在上例中,我们:

  1. 构建一个页面集合
  2. 按标题对集合排序
  3. 对集合分页,每个分页器含 7 个元素
  4. 遍历分页后的页面集合,为每个页面渲染一个链接
  5. 调用内嵌的分页模板,在分页器之间创建导航链接