HUGO
Menu
GitHub 87548 stars Mastodon

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

在上面的示例中,我们:

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

请注意,分页的结果会被缓存。一旦调用了 PaginatorPaginate 方法,分页后的集合就是不可变的。这些方法的额外调用将无效。


Last updated: January 1, 0001
Improve this page