-->

在用户的本地语言显示的网站基础上的IP地址(Display website in a user

2019-10-22 00:14发布

我希望我的网站在访问者的母语作为由其中用户已经从登录的IP地址确定被打开。

默认情况下,页面的英文打开,但我希望我的客户来自法国读法语网站。 我走过了www.ipinfo.io的信息,但我还是有点困惑,想知道JSON格式。

Answer 1:

您应该使用accept-language用户的浏览器将头到您的网站确定的语言,而不是用户当前的国家。

如果你想立足全国的定制网站内容http://ipinfo.io你最好使用看起来像这样的代码:

$.get("http://ipinfo.io", function(response) {
    if(response.country == 'US') {
        // User is in the USA
    } else {
        // User is elsewhere 
    }
}, "jsonp");

您可以在找到的国家代码喜欢的东西的名字,货币代码,拨号代码和更完整的映射http://country.io/data/



Answer 2:

我建议不要使用IP单独确定的显示语言。 使用Accept-Language头是更为可靠。

考虑以下比较常见的场景:一个只有英语为母语的人前往俄罗斯,并打开您的网站。 随后俄罗斯着陆页显示在西里尔。



Answer 3:

这不回答你的最后一个问题,但它是一个更好的解决您的问题。

而不是使用一个IP地址,基于浏览器的“接受语言”头,以确定区域,利用本地化。 这个头默认情况下,根据您的操作系统的本地化设置安装的浏览器时通常设置。

大多数现代的UI框架(无论是网络,移动设备或台式机)具有本地化/国际化库。



文章来源: Display website in a user's native language based on the IP address