github.com/shohhei1126/hugo@v0.42.2-0.20180623210752-3d5928889ad7/tpl/tplimpl/embedded/templates/pagination.html (about) 1 {{ $pag := $.Paginator }} 2 {{ if gt $pag.TotalPages 1 }} 3 <ul class="pagination"> 4 {{ with $pag.First }} 5 <li> 6 <a href="{{ .URL }}" aria-label="First"><span aria-hidden="true">««</span></a> 7 </li> 8 {{ end }} 9 <li 10 {{ if not $pag.HasPrev }}class="disabled"{{ end }}> 11 <a href="{{ if $pag.HasPrev }}{{ $pag.Prev.URL }}{{ end }}" aria-label="Previous"><span aria-hidden="true">«</span></a> 12 </li> 13 {{ $.Scratch.Set "__paginator.ellipsed" false }} 14 {{ range $pag.Pagers }} 15 {{ $right := sub .TotalPages .PageNumber }} 16 {{ $showNumber := or (le .PageNumber 3) (eq $right 0) }} 17 {{ $showNumber := or $showNumber (and (gt .PageNumber (sub $pag.PageNumber 2)) (lt .PageNumber (add $pag.PageNumber 2))) }} 18 {{ if $showNumber }} 19 {{ $.Scratch.Set "__paginator.ellipsed" false }} 20 {{ $.Scratch.Set "__paginator.shouldEllipse" false }} 21 {{ else }} 22 {{ $.Scratch.Set "__paginator.shouldEllipse" (not ($.Scratch.Get "__paginator.ellipsed") ) }} 23 {{ $.Scratch.Set "__paginator.ellipsed" true }} 24 {{ end }} 25 {{ if $showNumber }} 26 <li 27 {{ if eq . $pag }}class="active"{{ end }}><a href="{{ .URL }}">{{ .PageNumber }}</a></li> 28 {{ else if ($.Scratch.Get "__paginator.shouldEllipse") }} 29 <li class="disabled"><span aria-hidden="true">…</span></li> 30 {{ end }} 31 {{ end }} 32 <li 33 {{ if not $pag.HasNext }}class="disabled"{{ end }}> 34 <a href="{{ if $pag.HasNext }}{{ $pag.Next.URL }}{{ end }}" aria-label="Next"><span aria-hidden="true">»</span></a> 35 </li> 36 {{ with $pag.Last }} 37 <li> 38 <a href="{{ .URL }}" aria-label="Last"><span aria-hidden="true">»»</span></a> 39 </li> 40 {{ end }} 41 </ul> 42 {{ end }}