From d53b6ab5ec8d5648201efc6308306e0c222b65fd Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Sat, 18 Apr 2020 18:08:13 +0800 Subject: Smart pagination --- layouts/_default/archives.html | 58 ++++++++++++++++++++++++++++++++++++-- layouts/_default/list.html | 58 ++++++++++++++++++++++++++++++++++++-- layouts/_default/tag.html | 63 ++++++++++++++++++++++++++++++++++++++---- 3 files changed, 168 insertions(+), 11 deletions(-) (limited to 'layouts/_default') diff --git a/layouts/_default/archives.html b/layouts/_default/archives.html index d4459ff..dab458f 100644 --- a/layouts/_default/archives.html +++ b/layouts/_default/archives.html @@ -14,9 +14,61 @@ {{ end }} + +{{ $offsetLinks := 2 }} +{{ $maxLinks := (add (mul $offsetLinks 2) 1) }} +{{ $lowerLimit := (add $offsetLinks 1) }} +{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }} {{ if gt $paginator.TotalPages 1 }} - + {{ end }} + {{ end }} \ No newline at end of file diff --git a/layouts/_default/list.html b/layouts/_default/list.html index e459763..567e577 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -17,9 +17,61 @@ {{ end }} + +{{ $offsetLinks := 2 }} +{{ $maxLinks := (add (mul $offsetLinks 2) 1) }} +{{ $lowerLimit := (add $offsetLinks 1) }} +{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }} {{ if gt $paginator.TotalPages 1 }} - + {{ end }} + {{ end }} \ No newline at end of file diff --git a/layouts/_default/tag.html b/layouts/_default/tag.html index 4373558..dd15f58 100644 --- a/layouts/_default/tag.html +++ b/layouts/_default/tag.html @@ -3,7 +3,8 @@ {{ i18n "tagsCurrentTag" . }} -{{ range .Paginator.Pages }} +{{ $paginator := .Paginator }} +{{ range $paginator.Pages }}

{{ .Title }} @@ -19,9 +20,61 @@

{{ end }} -{{ if gt .Paginator.TotalPages 1 }} - + +{{ $offsetLinks := 2 }} +{{ $maxLinks := (add (mul $offsetLinks 2) 1) }} +{{ $lowerLimit := (add $offsetLinks 1) }} +{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }} +{{ if gt $paginator.TotalPages 1 }} + {{ end }} + {{ end }} \ No newline at end of file -- cgit v1.2.3