对于一个网站,我们即将实现自动国家/语言选择,但仍然让用户可以选择更改它。
首先,如果用户使用具有国家级 TLD 的域进入网站,默认情况下会显示正确的语言。但问题是,如果它们来自通用/国际顶级域名(例如 .com),逻辑应该是什么。我们应该更喜欢使用我们通过他们的 IP 地址获得的国家,还是应该使用他们的浏览器区域设置?如果两者都有,按什么顺序?
因此,我在考虑这种层次结构:
- 如果之前更改过,请使用用户选择。如果用户从未明确设置过:
- 使用主机名 TLD。如果它是通用的(.com):
- 使用浏览器语言环境。如果此语言环境没有设置语言环境或没有相应的语言版本可用:
- 使用 IP 地址。如果检测到的国家/地区没有对应的语言版本:
- 使用英语。