Internationalization 在多语言网站中,Cookies与语言检测(浏览器与位置)以及两者都不存在
我对以下情况感到进退两难: 困境第一 曲奇饼: 这对通过个人电脑访问网站的用户来说是很好的(无需再次选择首选语言),但如果某个人在公共PC(如图书馆)中首先选择了一种语言,那么它就没有太大意义,因为可能会有其他语言偏好的人来 第二困境 语言检测: 如果网页从该位置检测到语言。住在那个国家的外国人怎么了?(居住在一个国家的外国人是否更有可能使用设置为其语言的浏览器?) (我已经有了选择语言的菜单,但我认为“自动化”很好。) 哪一种可能是最好的解决方案?我的偏好:Internationalization 在多语言网站中,Cookies与语言检测(浏览器与位置)以及两者都不存在,internationalization,Internationalization,我对以下情况感到进退两难: 困境第一 曲奇饼: 这对通过个人电脑访问网站的用户来说是很好的(无需再次选择首选语言),但如果某个人在公共PC(如图书馆)中首先选择了一种语言,那么它就没有太大意义,因为可能会有其他语言偏好的人来 第二困境 语言检测: 如果网页从该位置检测到语言。住在那个国家的外国人怎么了?(居住在一个国家的外国人是否更有可能使用设置为其语言的浏览器?) (我已经有了选择语言的菜单,但我认为“自动化”很好。) 哪一种可能是最好的解决方案?我的偏好: 如果用户已注册且具有语言首选项,请
但我也会通过将语言标识符像
/en/…
一样放入URL,使语言选择尽可能简单和透明。使用这样的URL,所选语言对用户是透明的,并且可以根据需要进行更改。与此特定于语言的URL一起,我还将提供一个不带语言标识符的独立于语言的URL。两者都有什么问题?使用cookies确定语言的第一选择。提供一个微妙的选项(可能带有标志等图形),以便在选择错误的位置/浏览器语言时将选项更改为位置/浏览器语言。如果我们有以下成分:
- 饼干
- ip地址
- 语言检测
- 语言选择屏幕
- 网站的可用语言
- if cookie with lang:show cookieLang
- 如果没有cookie:
- IPloc=结果IP位置
- detLang=语言协商的结果
- 如果(匹配(例如IPloc=BE&detLang=FR)和语言可用,则设置cookie&show detectedLang
- 否则(例如,不匹配IPloc=IT&detLang=NL),然后显示语言选择屏幕,让用户进行选择,在cookie中设置语言并显示choosen语言
另一种方法是注册2个(或更多)URL,例如mybank.be、mijnbank.be和monbanque.be,所有URL都指向同一站点。根据用户选择的URL,会自动选择正确的语言。我认为,这只适用于非常低比例的互联网用户。你有经验数据支持吗?@chlemertz:我没有数字,但为什么你觉得语言谈判是个糟糕的选择?据我所知,大多数浏览器使用OS语言作为默认语言,这是一个相当合理的猜测。@chelmertz:语言协商只适用于未指定语言的情况。但是一旦使用者选择了语言,就用它来代替语言谈判。@Joachim Sauer&@Gumbo:我评论的修订版没有提到“语言谈判”,这听起来是个好主意。我的评论是针对可猜测的URI:s在一般化用户设置中的有用性。如果我没有票数用完,我会投票。你不知道有些网站(cough apple cough paypal cough ebay cough)有多烦人;他们看到我有一个意大利语IP,所以他们认为1)我说意大利语2)我想说意大利语,把语言改回英语真是一场史诗般的战斗(需要浏览十几个意大利语页面)+1@Andreas Bonini我和谷歌打过同样的战斗(当我清理缓存和cookies时)我想如果他们阅读浏览器的语言,就不会有任何问题。