如何在wordpress中根据国家/地区更改域名

时间:2017-04-10 10:11:31

标签: php wordpress nginx

我的WordPress网站托管在nginx服务器上。现在,我创建了一个子域名,例如us.example.com当网站在美国开放时,如何根据国家/地区更改WordPress URL,即us.example.com?

1 个答案:

答案 0 :(得分:0)

有一个网站提供给定ip的地理位置(实际上有很多,但我只关注这个):http://ip-api.com/

您可以使用他们提供的信息将访问者重定向到相应的子域,如下所示:

$this_ip = $_SERVER["REMOTE_ADDR"];
$get_ip_info = file_get_contents("http://ip-api.com/json/".$this_ip);
$ip_info = json_decode($get_ip_info);
$countryCode = strtolower($ip_info->{"countryCode"});

header("Location: http://".$countryCode.".example.com");    

当然,有很多国家,因为实际上不可能为每个国家维护一个子域名,你可以使用" if"缩小重定向选项的声明:

if($countryCode=="fr"){ //french
    header("Location: http://fr.example.com");
}else
if($countryCode=="de"){ //german
    header("Location: http://de.example.com");
}else
if($countryCode=="gr"){ //greek
    header("Location: http://gr.example.com");
}else{ //universal
    header("Location: http://www.example.com");
}

希望这能帮到你!