2025-04-10 05:47:02 +08:00
|
|
|
{{- $dest := .Destination -}}
|
|
|
|
{{- $url := urls.Parse $dest -}}
|
|
|
|
|
|
|
|
{{- if and $dest (hasPrefix $dest "/") -}}
|
|
|
|
{{- with or (.PageInner.GetPage $url.Path) (.PageInner.Resources.Get $url.Path) (resources.Get $url.Path) -}}
|
|
|
|
{{- $query := cond $url.RawQuery (printf "?%s" $url.RawQuery) "" -}}
|
|
|
|
{{- $fragment := cond $url.Fragment (printf "#%s" $url.Fragment) "" -}}
|
|
|
|
{{- $dest = printf "%s%s%s" .RelPermalink $query $fragment -}}
|
|
|
|
{{- else -}}
|
|
|
|
{{- $dest = (relURL (strings.TrimPrefix "/" $dest)) -}}
|
|
|
|
{{- end -}}
|
|
|
|
{{- end -}}
|
2025-08-24 13:57:07 +02:00
|
|
|
|
2023-08-12 19:53:14 +01:00
|
|
|
{{- with . -}}
|
2025-08-24 13:57:07 +02:00
|
|
|
{{- $isExternal := strings.HasPrefix .Destination "http" -}}
|
|
|
|
<a href="{{ $dest | safeURL }}"
|
|
|
|
{{- with .Title -}}title="{{ . }}"{{- end -}}
|
|
|
|
{{- if $isExternal -}}target="_blank" rel="noopener"{{- end -}}
|
|
|
|
>
|
|
|
|
{{- .Text | safeHTML -}}
|
|
|
|
{{- if and .Page.Site.Params.externalLinkDecoration $isExternal -}}
|
|
|
|
{{- partial "utils/icon.html" (dict "name" "arrow-up-right" "attributes" `class="hx:inline hx:rtl:rotate-270 hx:align-baseline" height="1em"`) -}}
|
|
|
|
{{- end -}}
|
|
|
|
</a>
|
2023-08-12 19:53:14 +01:00
|
|
|
{{- end -}}
|