hugo/docs/content/en/methods/pager/HasPrev.md
2024-06-21 09:41:24 +02:00

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 }}
```