1
Files
2025/themes/42/layouts/_partials/page-links.html

58 lines
1.7 KiB
HTML

{{- $page := . -}}
{{- $linksParam := .Params.links -}}
{{- $links := slice -}}
{{- if $linksParam }}
{{- $type := printf "%T" $linksParam -}}
{{- if hasPrefix $type "[]" }}
{{- $links = $linksParam -}}
{{- else }}
{{- $links = slice $linksParam -}}
{{- end }}
{{- end }}
{{- $hasWikipediaLink := false -}}
{{- range $links }}
{{- if and (not $hasWikipediaLink) (and .url (in .url "wikipedia.org")) }}
{{- $hasWikipediaLink = true -}}
{{- end }}
{{- end }}
{{- $addWikiLink := and (eq .Kind "term") (not $hasWikipediaLink) -}}
{{- $wikiLink := dict -}}
{{- if $addWikiLink }}
{{- $lang := default "fr" $page.Site.Language.Lang -}}
{{- $query := urlquery $page.Title -}}
{{- $searchUrl := printf "https://%s.wikipedia.org/w/index.php?search=%s" $lang $query -}}
{{- $wikiLink = dict
"name" (printf "Rechercher \"%s\" sur Wikipédia" $page.Title)
"url" $searchUrl
"lang" $lang
"require_manual_intervention" true
-}}
{{- end }}
{{- if or (gt (len $links) 0) $addWikiLink }}
<nav id="page-links">
{{- range $links }}
{{- $text := default .name .text -}}
{{- $title := default $text .title -}}
{{- partial "render/link.html" (dict
"Destination" .url
"Title" $title
"Text" $text
"Page" $page
) -}}
{{- end }}
{{- if $addWikiLink }}
{{- $text := $wikiLink.name -}}
{{- $title := default $text $wikiLink.title -}}
{{- partial "render/link.html" (dict
"Destination" $wikiLink.url
"Title" $title
"Text" $text
"Page" $page
) -}}
{{- end }}
</nav>
{{- end }}