我的网站有法语版和英文版:
* example.com /是我的英文版
* example.com / fr /是我的法语版。
因此,他们可以通过点击标志来更改网站版本,但默认情况下,如果他们到达example.com,则会使用英文。
我想给他们与他们的语言偏好相对应的版本,我用以下方法检测语言偏好:
var language = window.navigator.userLanguage || window.navigator.language;
但是我使用了什么代码,以便当他们到达网页时,它会根据用户语言偏好提供版本?
如果网站提供法语版但用户想要英文版,仍然可以手动更改。
答案 0 :(得分:1)
您必须重定向它们:
if (window.navigator.language === 'fr') {
window.location.href = "http://example.com/fr/";
}
请注意,window.navigator.language
属性为implemented differently across browsers,您可能需要在数组中找到首选语言(如window.navigator.languages)。
更好的选择是检查服务器端HTTP请求的Accept-Language
标头,并在服务器端重定向。
还有JavaScript-based国际化方法,但它们通常不涉及重定向网站。