mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-14 20:37:55 -05:00
72 lines
1.6 KiB
Markdown
72 lines
1.6 KiB
Markdown
---
|
|
title: HasPrev
|
|
description: Reports whether there is a pager before the current pager.
|
|
categories: []
|
|
keywords: []
|
|
action:
|
|
related:
|
|
- methods/pager/HasNext
|
|
- methods/pager/Prev
|
|
- methods/pager/Next
|
|
- methods/pager/First
|
|
- methods/pager/Last
|
|
- methods/page/Paginate
|
|
returnType: bool
|
|
signatures: [PAGER.HasPrev]
|
|
---
|
|
|
|
Use the `HasPrev` method to build navigation between pagers.
|
|
|
|
```go-html-template
|
|
{{ $pages := where site.RegularPages "Type" "posts" }}
|
|
{{ $paginator := .Paginate $pages }}
|
|
|
|
{{ range $paginator.Pages }}
|
|
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
|
|
{{ end }}
|
|
|
|
{{ with $paginator }}
|
|
<ul>
|
|
{{ with .First }}
|
|
<li><a href="{{ .URL }}">First</a></li>
|
|
{{ end }}
|
|
{{ if .HasPrev }}
|
|
<li><a href="{{ .Prev.URL }}">Previous</a></li>
|
|
{{ end }}
|
|
{{ if .HasNext }}
|
|
<li><a href="{{ .Next.URL }}">Next</a></li>
|
|
{{ end }}
|
|
{{ with .Last }}
|
|
<li><a href="{{ .URL }}">Last</a></li>
|
|
{{ end }}
|
|
</ul>
|
|
{{ end }}
|
|
```
|
|
|
|
You can also write the above without using the `HasPrev` method:
|
|
|
|
```go-html-template
|
|
{{ $pages := where site.RegularPages "Type" "posts" }}
|
|
{{ $paginator := .Paginate $pages }}
|
|
|
|
{{ range $paginator.Pages }}
|
|
<h2><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></h2>
|
|
{{ end }}
|
|
|
|
{{ with $paginator }}
|
|
<ul>
|
|
{{ with .First }}
|
|
<li><a href="{{ .URL }}">First</a></li>
|
|
{{ end }}
|
|
{{ with .Prev }}
|
|
<li><a href="{{ .URL }}">Previous</a></li>
|
|
{{ end }}
|
|
{{ with .Next }}
|
|
<li><a href="{{ .URL }}">Next</a></li>
|
|
{{ end }}
|
|
{{ with .Last }}
|
|
<li><a href="{{ .URL }}">Last</a></li>
|
|
{{ end }}
|
|
</ul>
|
|
{{ end }}
|
|
```
|