feat: if current page has i18n version, language switcher will redirect to there instead of homepage (#1237)

feat: if current page has i18n version, language switcher will redirect to there
This commit is contained in:
Jimmy
2026-01-25 23:55:50 +01:00
committed by GitHub
parent d002c0d0d9
commit 35cba14cde
+14 -10
View File
@@ -77,17 +77,21 @@
<li class="menu-bottom-section"> <li class="menu-bottom-section">
<ol class="menu"> <ol class="menu">
{{- $currentLanguageCode := .Language.Lang -}} {{- $currentLanguageCode := .Language.Lang -}}
{{ if ( compare.Gt .Site.Home.AllTranslations.Len 1 ) }} {{ if hugo.IsMultilingual }}
{{ with .Site.Home.AllTranslations }} <li id="i18n-switch">
<li id="i18n-switch"> {{ partial "helper/icon" "language" }}
{{ partial "helper/icon" "language" }} <select name="language" title="language" onchange="window.location.href = this.selectedOptions[0].value">
<select name="language" title="language" onchange="window.location.href = this.selectedOptions[0].value"> {{ range .Site.Home.AllTranslations }}
{{ range . }} {{ $target := . }}
<option value="{{ .RelPermalink }}" {{ if eq .Language.Lang $currentLanguageCode }}selected{{ end }}>{{ .Language.LanguageName }}</option> {{ range $.AllTranslations }}
{{ if eq .Language.Lang $target.Language.Lang }}
{{ $target = . }}
{{ end }}
{{ end }} {{ end }}
</select> <option value="{{ $target.RelPermalink }}" {{ if eq $target.Language.Lang $currentLanguageCode }}selected{{ end }}>{{ .Language.LanguageName }}</option>
</li> {{ end }}
{{ end }} </select>
</li>
{{ end }} {{ end }}
{{ if (default false .Site.Params.colorScheme.toggle) }} {{ if (default false .Site.Params.colorScheme.toggle) }}