{{- if gt .Paginator.TotalPages 1 -}} <ul class="pagination"> {{- .Scratch.Set "paginator.ellipsed" false -}} {{- range $.Paginator.Pagers -}} {{- $right := sub .TotalPages .PageNumber -}} {{- $showNumber := or (le .PageNumber 1) (eq $right 0) -}} {{- $showNumber := or $showNumber (and (gt .PageNumber (sub $.Paginator.PageNumber 3)) (lt .PageNumber (add $.Paginator.PageNumber 3))) -}} {{- if $showNumber -}} {{- $.Scratch.Set "paginator.ellipsed" false -}} {{- $.Scratch.Set "paginator.shouldEllipse" false -}} {{- else -}} {{- $.Scratch.Set "paginator.shouldEllipse" (not ($.Scratch.Get "paginator.ellipsed") ) -}} {{- $.Scratch.Set "paginator.ellipsed" true -}} {{- end -}} {{- if $showNumber -}} <li class="page-item {{ if eq . $.Paginator }}active{{ end }}"> <span class="page-link"> <a href="{{ .URL }}"> {{- .PageNumber -}} </a> </span> </li> {{- else if ($.Scratch.Get "paginator.shouldEllipse") -}} <li class="page-item "> <span class="page-link" aria-hidden="true">…</span> </li> {{- end -}} {{- end -}} </ul> {{- end -}}