【问题标题】:Redirect to differant version of the website by country of origin按原产国重定向到不同版本的网站
【发布时间】:2014-12-31 17:15:39
【问题描述】:

我有两个站点,一个针对美国,它位于域 .com 的根目录中,并且我在一个名为 /uk 的目录中针对英国客户有一个站点副本。

这是我设置的代码,当我使用测试空白 php 页面时可以正常工作,我正在使用 geoplugin 类。

<?php ob_start();?>
<?php require_once('geoplugin.class.php');$geoplugin = new geoPlugin(); ?>
<?php $country = $geoplugin->locate();?>

        <?php
        $countryName= $geoplugin->countryName ;
        $ukCountry = 'http://www.mywebsite.com/uk/';
        $mainSite = 'http://www.mywebsite.com/';


//UK 
         if ($countryName =="United Kingdom")
          {

                    header('Location: '.$ukCountry);
          }else{

                    header('Location: '.$mainSite);

?>

我正在通过包含语句连接到上述页面,并且作为测试工作正常。

但我想要发生的是,当访问者来到主站点,然后检查原籍国,如果国家是英国,然后转发到英国版本。

我想在 Wordpress 网站上安装它,但是当我放置“包含”语句时出现错误

警告:无法修改标头信息 - 标头已由

发送

我已经阅读了很多关于输出缓冲的内容,并且我尝试了很多方法来让它工作,但我无法让它正确转发。

我知道上面的代码可能会出现无限循环,但如果要停止,我会删除 else 语句。

基本上我希望网站检查国家是英国,如果这样转发到英国网站,如果不是正常加载页面。

欢迎提出任何建议。

【问题讨论】:

标签: php wordpress ip-geolocation


【解决方案1】:

首先,您可以使用Maxmind 进行地理定位。 然后在 word press 中创建 plugin_in 并在 work press 中使用 HOOK 系统来使用 init Hook 钩住你的代码。

【讨论】:

  • 我已经在使用一个可以正常工作的插件,这是导致错误的 wordpress 的实现。
猜你喜欢
  • 2021-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-31
  • 1970-01-01
  • 2020-10-04
  • 1970-01-01
相关资源
最近更新 更多