我使用 Hugo,它内置了对多语言站点的支持。但是,它的语言切换器不是永久性的,语言默认为权重启用的第一种语言。我想以用户关闭浏览器时保存的方式设置语言。假设语言是英语和法语。
这里是切换语言的代码。
{{- if $.IsTranslated -}}
{{ range $.Translations }}
<a id="{{ $.Language.Lang }}" href="{{ .Permalink }}" aria-label="{{ $.Language.LanguageName }}">
<span>{{ $.Language.Lang }}</span>
</a>
{{- end }}
{{- end }}
当语言为英语时,这是上面代码中的 HTML
<a id="en" href="https://example.com/fr/" aria-label="English">
<span>en</span>
</a>
切换到法语时
<a id="fr" href="https://example.com/" aria-label="French">
<span>fr</span>
</a>
有人建议我“你需要添加一个 JavaScript,当语言选择器发生变化时(在 JavaScript 中有一个事件)设置一个 cookie,每次用户加载页面时都会读取它。取决于它们被发送一旦他们最终使用另一种语言,就会使用正确的语言。”
但是我从这个网站上看到的所有方法都与我的问题无关。有谁知道如何实现这一点?