Files

33 lines
1.4 KiB
HTML

{{- /* breadcrumbs.html — visible breadcrumb trail + BreadcrumbList JSON-LD on all
non-home pages. Built from .Ancestors (reversed) + the current page. */ -}}
{{- if not .IsHome -}}
{{- $crumbs := slice -}}
{{- range .Ancestors.Reverse -}}
{{- $crumbs = $crumbs | append . -}}
{{- end -}}
{{- $crumbs = $crumbs | append . -}}
{{- $last := sub (len $crumbs) 1 -}}
<nav aria-label="Breadcrumb" class="site-container pt-6">
<ol class="flex flex-wrap items-center gap-1 text-sm text-secondary/60">
{{- range $i, $c := $crumbs -}}
{{- if $i }}<li aria-hidden="true" class="px-1 text-secondary/30">/</li>{{ end -}}
<li>
{{- if eq $i $last -}}
<span aria-current="page" class="font-medium text-secondary/80">{{ $c.LinkTitle }}</span>
{{- else -}}
<a href="{{ $c.RelPermalink }}" class="no-underline hover:text-primary hover:underline">{{ $c.LinkTitle }}</a>
{{- end -}}
</li>
{{- end -}}
</ol>
</nav>
{{- $items := slice -}}
{{- range $i, $c := $crumbs -}}
{{- $items = $items | append (dict "@type" "ListItem" "position" (add $i 1) "name" $c.LinkTitle "item" $c.Permalink) -}}
{{- end -}}
{{- $bc := dict "@context" "https://schema.org" "@type" "BreadcrumbList" "itemListElement" $items -}}
<script type="application/ld+json">{{ $bc | jsonify | safeJS }}</script>
{{- end -}}