📄 分页条
最后更新:2026-10-02
⚡ 最简写法
模板里直接调用 {{pagebar .TotalPages .CurrentQuery .CurrentPage}} 即可,自动生成上一页 / 下一页 / 页码链接(基于 ?page=N 查询参数)。
<div class="pagination">
{{pagebar .TotalPages .CurrentQuery .CurrentPage}}
</div>
📋 分页相关字段
当使用 list 分页或内置列表页时,以下字段可用:
{{.Page}}当前页数字
{{.TotalPages}}总页数数字
{{.TotalItems}}总条数数字
{{.HasPrev}}是否有上一页布尔
{{.HasNext}}是否有下一页布尔
{{.PrevPage}}上一页页码数字
{{.NextPage}}下一页页码数字
{{.PageNumbers}}页码数组,每项含
.Num(页码)、.URL(路径式链接)、.IsEllipsis(是否为省略号占位)数组{{.FirstURL}}首页链接(路径式,不含 ?,利于整站静态导出)URL
{{.PrevURL}}上一页链接(路径式)URL
{{.NextURL}}下一页链接(路径式)URL
{{.LastURL}}末页链接(路径式)URL
{{.PageBase}}当前分页基础路径(路径式分页的根,如
/products),便于拼自定义链接URL⚠️ 两套分页链接风格并存:pagebar 函数与 pageURL 函数生成的是 ?page=N 查询式链接;而上面的 FirstURL/PrevURL/NextURL/LastURL/PageNumbers[].URL 是路径式链接(如 /products/index2.html),更适合整站静态导出。动态站点可混用,静态导出建议只用路径式字段。
💻 自定义分页条(推荐:路径式,利于整站静态导出)
系统已为你算好每个按钮的路径式链接(不含 ?),直接输出即可;配合 PageNumbers 中的 .Num / .URL / .IsEllipsis 渲染页码。
<div class="pagination">
{{if .HasPrev}}<a href="{{.FirstURL}}">首页</a><a href="{{.PrevURL}}">上一页</a>{{end}}
{{range .PageNumbers}}
{{if .IsEllipsis}}<span class="dots">…</span>
{{else if eq .Num $.Page}}<span class="current">{{.Num}}</span>
{{else}}<a href="{{.URL}}">{{.Num}}</a>{{end}}
{{end}}
{{if .HasNext}}<a href="{{.NextURL}}">下一页</a><a href="{{.LastURL}}">末页</a>{{end}}
</div>
备选(动态查询串方式):若站点以动态方式运行(非整站静态导出),可用 pageURL 函数生成 ?page=N 链接,但必须传 3 个参数(当前页 / 总页数 / 查询串):{{pageURL .PrevPage .TotalPages .CurrentQuery}}。
Gitl.cn云建站 SaaS