diff options
Diffstat (limited to 'themes/hugo-theme-stack/layouts/partials/widget/archives.html')
-rw-r--r-- | themes/hugo-theme-stack/layouts/partials/widget/archives.html | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/themes/hugo-theme-stack/layouts/partials/widget/archives.html b/themes/hugo-theme-stack/layouts/partials/widget/archives.html new file mode 100644 index 0000000..1f2abc5 --- /dev/null +++ b/themes/hugo-theme-stack/layouts/partials/widget/archives.html @@ -0,0 +1,35 @@ +{{- $query := first 1 (where .Context.Site.Pages "Layout" "==" "archives") -}} +{{- $context := .Context -}} +{{- $limit := default 5 .Params.limit -}} +{{- if $query -}} + {{- $archivesPage := index $query 0 -}} + <section class="widget archives"> + <div class="widget-icon"> + {{ partial "helper/icon" "infinity" }} + </div> + <h2 class="widget-title section-title">{{ T "widget.archives.title" }}</h2> + + {{ $pages := where $context.Site.RegularPages "Type" "in" $context.Site.Params.mainSections }} + {{ $notHidden := where $context.Site.RegularPages "Params.hidden" "!=" true }} + {{ $filtered := ($pages | intersect $notHidden) }} + {{ $archives := $filtered.GroupByDate "2006" }} + + <div class="widget-archive--list"> + {{ range $index, $item := first (add $limit 1) ($archives) }} + {{- $id := lower (replace $item.Key " " "-") -}} + <div class="archives-year"> + <a href="{{ $archivesPage.RelPermalink }}#{{ $id }}"> + {{ if eq $index $limit }} + <span class="year">{{ T "widget.archives.more" }}</span> + {{ else }} + <span class="year">{{ .Key }}</span> + <span class="count">{{ len $item.Pages }}</span> + {{ end }} + </a> + </div> + {{ end }} + </div> + </section> +{{- else -}} + {{- warnf "Archives page not found. Create a page with layout: archives." -}} +{{- end -}}
\ No newline at end of file |