检测国家/地区,显示产品是否可用

时间:2014-05-22 07:29:53

标签: php jquery wordpress

我试图展示一个取决于国家的div,我对如何去做有点迷失。我的网站在Wordpress上运行。所以应该发生的事情是,例如,当这个国家是新加坡,柬埔寨和越南时,这个特定的部分出现(如“这个产品在新加坡可用”)如果不是这三个,将出现一个不同的部分(如'This产品不在菲律宾提供')

我如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

要确定用户的国家/地区,可以使用Sypex Geo:http://sypexgeo.net/ru/download/ 它是BSD许可的。不幸的是,它只有俄罗斯文档,但这是如何使用它:

  1. 将SxGeo.php脚本文件和SxGeo.dat国家/地区数据库文件复制到您的主机

  2. 在Wordpress主题functions.php中包含SxGeo.php,或创建一个小部件,该小部件将显示产品可用性信息并将其包含在那里。

    include('SxGeo.php');

  3. 创建SxGeo对象

    $SxGeo = new SxGeo(); // default mode // or $SxGeo = new SxGeo('SxGeo.dat', SXGEO_BATCH | SXGEO_MEMORY); // fastest mode, uses more RAM

  4. 检测国家/地区。这里考虑您已将用户的IP存储在$ip中。我无法就如何检测用户的IP给出完美的建议,因为用户可以在代理服务器后面。您可能希望查看此主题:How to get the client IP address in PHP?但是,我相信,在许多情况下,代理服务器与其用户位于同一个国家/地区。

    $ip = $_SERVER['REMOTE_ADDR']; $country = $SxGeo->getCountry($ip); // return two-letters country ISO-code

  5. 删除SxGeo对象,释放资源

    unset($SxGeo);