🚧 Add pagination in home page.

This commit is contained in:
凡梦星尘 2022-05-16 09:22:39 +08:00
parent 331c692be5
commit 172479cb0a
5 changed files with 46 additions and 9 deletions

View File

@ -5,6 +5,8 @@ baseURL: /
theme: hugo-theme-next
paginate: 3
#--------------------------------------
# Hugo multilingual settings
#--------------------------------------

View File

@ -20,9 +20,6 @@
</header>
<div class="main-inner index posts-expand">
{{- block "main" . -}}{{- end -}}
<nav class="pagination">
{{ partial "partials/pages.html" . }}
</nav>
</div>
</main>
<footer class="footer">

View File

@ -28,4 +28,5 @@
</article>
</div>
{{- end }}
{{- partial "partials/pagination" . }}
{{- end }}

View File

@ -1,5 +0,0 @@
<span class="page-number current">1</span>
<a class="page-number" href="/page/2/">2</a>
<a class="extend next" rel="next" href="/page/2/">
<i class="fa fa-angle-right" aria-label="下一页"></i>
</a>

View File

@ -0,0 +1,42 @@
{{- $pag := .Paginator }}
{{- $tps := $pag.TotalPages }}
{{- $begin := sub $pag.PageNumber 4}}
{{- $.Scratch.Set "begin" $begin }}
{{- $end := add $pag.PageNumber 4}}
{{- $.Scratch.Set "end" $end }}
{{- if lt $begin 0}}
{{- $end := sub $end $begin }}
{{- $.Scratch.Set "end" $end }}
{{- end}}
{{- $end := $.Scratch.Get "end"}}
{{- $over := sub $tps $end }}
{{- if lt $over 0}}
{{- $begin := add $begin $over}}
{{- $.Scratch.Set "begin" $begin }}
{{- end }}
{{- $begin := $.Scratch.Get "begin"}}
<nav class="pagination">
{{- if $pag.HasPrev }}
<a class="extend prev" rel="prev" href="{{- $pag.Prev.URL }}">
<i class="fa fa-angle-left"></i>
</a>
{{- end }}
{{- range $p := $pag.Pagers }}
{{- if and (ge $p.PageNumber $begin) (le $p.PageNumber $end) }}
{{- if eq $p $pag }}
<span class="page-number current">{{- $p.PageNumber }}</span>
{{- else }}
<a class="page-number" href="{{- $p.URL }}">{{- $p.PageNumber }}</a>
{{- end }}
{{- end }}
{{- end }}
{{- if $pag.HasNext }}
<a class="extend next" rel="next" href="{{- $pag.Next.URL }}">
<i class="fa fa-angle-right"></i>
</a>
{{- end }}
</nav>