amethyst/layouts/partials/quartz/backlinks.html
2023-01-01 23:41:14 +00:00

31 lines
1.1 KiB
HTML

<h3>{{ i18n "backlinks" }}</h3>
<ul class="backlinks">
{{$url := urls.Parse .Site.BaseURL }}
{{$host := strings.TrimRight "/" $url.Path }}
{{$curPage := strings.TrimPrefix $host (strings.TrimRight "/" .Page.RelPermalink)}}
{{$linkIndex := getJSON "/assets/indices/linkIndex.json"}}
{{$inbound := index $linkIndex.index.backlinks $curPage}}
{{$contentTable := getJSON "/assets/indices/contentIndex.json"}}
{{if $inbound}}
{{$backlinks := dict "SENTINEL" "SENTINEL"}}
{{range $k, $v := $inbound}}
{{$cleanedInbound := replace $v.source " " "-"}}
{{$ctx := $v.text}}
{{$backlinks = merge $backlinks (dict $cleanedInbound $ctx)}}
{{end}}
{{- range $lnk, $ctx := $backlinks -}}
{{$l := printf "%s%s/" $host $lnk}}
{{$l = cond (eq $l "//") "/" $l}}
{{with (index $contentTable $lnk)}}
<li>
<a href="{{$l}}" data-ctx="{{$ctx}}" data-src="{{$lnk}}" class="internal-link">{{index (index . "title")}}</a>
</li>
{{end}}
{{- end -}}
{{else}}
<li>
{{ i18n "no_backlinks" }}
</li>
{{end}}
</ul>