]> danix's work - danix.xyz-2.git/commitdiff
revert: restore taxonomy templates to card-stack layout with post-count badge
authorDanilo M. <redacted>
Tue, 21 Apr 2026 10:06:34 +0000 (12:06 +0200)
committerDanilo M. <redacted>
Tue, 21 Apr 2026 10:06:34 +0000 (12:06 +0200)
Reverts commits 79f839d (timeline applied to all list contexts).
Timeline remains on /articles/ (_default/list.html).
Tags and categories revert to card-stack layout with post-count badge overlay.

Co-Authored-By: Claude Haiku 4.5 <redacted>
themes/danix-xyz-hacker/layouts/taxonomy/list.html
themes/danix-xyz-hacker/layouts/taxonomy/term.html

index 7fd06ab238491e17bde54651bef6783d9624ff77..cd4945a00de4d45221d36b47b05c7e33ad4bc7e0 100644 (file)
@@ -1,40 +1,49 @@
 {{ define "main" }}
-<div class="mx-auto px-4 py-12 max-w-5xl">
+<div class="mx-auto px-4 py-12 max-w-4xl">
   <!-- Page title with taxonomy name -->
   <h1 class="text-4xl md:text-5xl font-bold text-accent mb-12">
     {{ i18n .Data.Plural }}
   </h1>
 
-  {{ $pinned := where .Pages "Params.pinned" true }}
-  {{ $unpinned := where .Pages "Params.pinned" false }}
+  <!-- Articles list -->
+  <div class="space-y-6 max-w-3xl">
+    {{ $pinned := where .Pages "Params.pinned" true }}
+    {{ $unpinned := where .Pages "Params.pinned" false }}
 
-  <!-- If no unpinned posts found (because param is undefined), get all non-pinned pages -->
-  {{ if eq (len $unpinned) 0 }}
-    {{ $unpinned = where .Pages "Params.pinned" nil }}
+    <!-- If no unpinned posts found (because param is undefined), get all non-pinned pages -->
     {{ if eq (len $unpinned) 0 }}
-      {{ $unpinned = where .Pages "Params.pinned" "" }}
+      {{ $unpinned = where .Pages "Params.pinned" nil }}
+      {{ if eq (len $unpinned) 0 }}
+        {{ $unpinned = where .Pages "Params.pinned" "" }}
+      {{ end }}
     {{ end }}
-  {{ end }}
 
-  {{ if eq (len .Pages) 0 }}
-  <div class="py-12 text-center text-text-dim">
-    {{ i18n "noRelated" }}
-  </div>
-  {{ else }}
-  <ol class="timeline" aria-label="{{ i18n .Data.Plural }}">
-    {{ range $i, $page := (sort $pinned "Date" "desc") }}
-      {{ $side := "left" }}
-      {{ if eq (mod $i 2) 0 }}{{ $side = "left" }}{{ else }}{{ $side = "right" }}{{ end }}
-      {{ partial "article-list-item.html" (dict "Page" $page "side" $side) }}
+    <!-- Pinned posts first -->
+    {{ range (sort $pinned "Date" "desc") }}
+      <div class="relative">
+        {{ partial "article-list-item.html" . }}
+        <span class="absolute top-4 right-4 px-2 py-0.5 rounded text-xs font-mono bg-surface text-text-dim border border-border/30">
+          {{ i18n "postCount" .Pages.Len }}
+        </span>
+      </div>
     {{ end }}
-    {{ $offset := len $pinned }}
-    {{ range $i, $page := (sort $unpinned "Date" "desc") }}
-      {{ $idx := add $i $offset }}
-      {{ $side := "left" }}
-      {{ if eq (mod $idx 2) 0 }}{{ $side = "left" }}{{ else }}{{ $side = "right" }}{{ end }}
-      {{ partial "article-list-item.html" (dict "Page" $page "side" $side) }}
+
+    <!-- Regular posts -->
+    {{ range (sort $unpinned "Date" "desc") }}
+      <div class="relative">
+        {{ partial "article-list-item.html" . }}
+        <span class="absolute top-4 right-4 px-2 py-0.5 rounded text-xs font-mono bg-surface text-text-dim border border-border/30">
+          {{ i18n "postCount" .Pages.Len }}
+        </span>
+      </div>
     {{ end }}
-  </ol>
-  {{ end }}
+
+    <!-- Empty state -->
+    {{ if eq (len .Pages) 0 }}
+      <div class="py-12 text-center text-text-dim">
+        {{ i18n "noRelated" }}
+      </div>
+    {{ end }}
+  </div>
 </div>
 {{ end }}
index a96e107511d37ee29aa4c978c40f5dfc1879d88e..5858f64cade18c974d53e6149f910e1ed337d494 100644 (file)
@@ -1,5 +1,5 @@
 {{ define "main" }}
-<div class="mx-auto px-4 py-12 max-w-5xl">
+<div class="mx-auto px-4 py-12 max-w-4xl">
   <!-- Page title with taxonomy type -->
   <h1 class="text-4xl md:text-5xl font-bold text-accent mb-2">
     {{ i18n .Data.Singular }}
     </span>
   </p>
 
-  {{ $pinned := where .Pages "Params.pinned" true }}
-  {{ $unpinned := where .Pages "Params.pinned" false }}
-  {{ if eq (len $unpinned) 0 }}
-    {{ $unpinned = where .Pages "Params.pinned" nil }}
+  <!-- Articles list -->
+  <div class="space-y-6 max-w-3xl">
+    {{ $pinned := where .Pages "Params.pinned" true }}
+    {{ $unpinned := where .Pages "Params.pinned" false }}
+
+    <!-- If no unpinned posts found (because param is undefined), get all non-pinned pages -->
     {{ if eq (len $unpinned) 0 }}
-      {{ $unpinned = where .Pages "Params.pinned" "" }}
+      {{ $unpinned = where .Pages "Params.pinned" nil }}
+      {{ if eq (len $unpinned) 0 }}
+        {{ $unpinned = where .Pages "Params.pinned" "" }}
+      {{ end }}
     {{ end }}
-  {{ end }}
 
-  {{ if eq (len .Pages) 0 }}
-  <div class="py-12 text-center text-text-dim">
-    {{ i18n "noRelated" }}
-  </div>
-  {{ else }}
-  <ol class="timeline" aria-label="{{ .Title }}">
-    {{ range $i, $page := (sort $pinned "Date" "desc") }}
-      {{ $side := "left" }}
-      {{ if eq (mod $i 2) 0 }}{{ $side = "left" }}{{ else }}{{ $side = "right" }}{{ end }}
-      {{ partial "article-list-item.html" (dict "Page" $page "side" $side) }}
+    <!-- Pinned posts first -->
+    {{ range (sort $pinned "Date" "desc") }}
+      {{ partial "article-list-item.html" . }}
+    {{ end }}
+
+    <!-- Regular posts -->
+    {{ range (sort $unpinned "Date" "desc") }}
+      {{ partial "article-list-item.html" . }}
     {{ end }}
-    {{ $offset := len $pinned }}
-    {{ range $i, $page := (sort $unpinned "Date" "desc") }}
-      {{ $idx := add $i $offset }}
-      {{ $side := "left" }}
-      {{ if eq (mod $idx 2) 0 }}{{ $side = "left" }}{{ else }}{{ $side = "right" }}{{ end }}
-      {{ partial "article-list-item.html" (dict "Page" $page "side" $side) }}
+
+    <!-- Empty state -->
+    {{ if eq (len .Pages) 0 }}
+      <div class="py-12 text-center text-text-dim">
+        {{ i18n "noRelated" }}
+      </div>
     {{ end }}
-  </ol>
-  {{ end }}
+  </div>
 </div>
 {{ end }}