]> juplo.de Git - website/commitdiff
WIP:thymeleaf:taxonomies-on-page
authorKai Moritz <kai@juplo.de>
Sat, 22 Nov 2025 14:26:43 +0000 (15:26 +0100)
committerKai Moritz <kai@juplo.de>
Wed, 3 Dec 2025 18:50:02 +0000 (19:50 +0100)
hugo/themes/thymeleaf/layouts/_partials/terms.html

index 8a6ebec2a2cc3967aca21a8d253b130c17fa8d8e..35df26d582ef8939946c76ffe056f994fbbba700 100644 (file)
@@ -1,23 +1,49 @@
-{{- /*
-For a given taxonomy, renders a list of terms assigned to the page.
+{{- define "custom_css" }}
+<style>
+.terms-tags li {
+    display: inline-block;
+    margin: 10px;
+    font-weight: 500;
+}
 
-@context {page} page The current page.
-@context {string} taxonomy The taxonomy.
+.terms-tags a {
+    display: block;
+    padding: 3px 10px;
+    background: var(--tertiary);
+    border-radius: 6px;
+    transition: transform 0.1s;
+}
 
-@example: {{ partial "terms.html" (dict "taxonomy" "tags" "page" .) }}
-*/}}
-
-{{- $page := .page }}
-{{- $taxonomy := .taxonomy }}
+.terms-tags a:active {
+    background: var(--tertiary);
+    transform: scale(0.96);
+}
+</style>
+{{- end }}
+{{- define "main" }}
 
-{{- with $page.GetTerms $taxonomy }}
-  {{- $label := (index . 0).Parent.LinkTitle }}
-  <div>
-    <div>{{ $label }}:</div>
-    <ul>
-      {{- range . }}
-        <li><a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a></li>
-      {{- end }}
-    </ul>
-  </div>
+{{- if .Title }}
+<header class="page-header">
+    <h1>{{ .Title }}</h1>
+    {{- if .Description }}
+    <div class="post-description">
+        {{ .Description }}
+    </div>
+    {{- end }}
+</header>
 {{- end }}
+
+<ul class="terms-tags">
+    {{- $type := .Type }}
+    {{- range $key, $value := .Data.Terms.Alphabetical }}
+    {{- $name := .Name }}
+    {{- $count := .Count }}
+    {{- with site.GetPage (printf "/%s/%s" $type $name) }}
+    <li>
+        <a href="{{ .Permalink }}">{{ .Name }} <sup><strong><sup>{{ $count }}</sup></strong></sup> </a>
+    </li>
+    {{- end }}
+    {{- end }}
+</ul>
+
+{{- end }}{{/* end main */ -}}