如何在wordpress中获取用户位置

时间:2019-02-15 20:23:50

标签: php wordpress

我正在尝试通过IP地址显示用户区域和国家/地区,但我无法获取它。每次将IP地址传递给其他API时,请输入有效的IP地址。我正在使用 functions.php 中的shortcode进行此操作,并且正在访问 footer.php 中的 shortcode ,但是它不起作用。

这是我在functions.php中编写的代码

function user_region() { 
       $ip = "27.255.58.21";
       $http = wp_remote_get( 'https://ipinfo.io/{$ip}/json' );
       $data = wp_remote_retrieve_body( $http );
       $result=print_r($data);


  return '<div class="user-region">'.$data->country_name.'</div>';  

    }  

add_shortcode("get-user-region", "user_region"); 

这就是我在页脚中得到的

enter image description here

1 个答案:

答案 0 :(得分:1)

您正在尝试使用单引号使用变量插值。这是行不通的。用双引号替换单引号。使用双引号可以进行变量扩展,但不能使用单引号。

尝试一下:

$http = wp_remote_get("https://ipinfo.io/{$ip}/json");

或者,如果您坚持使用单引号:

$http = wp_remote_get('https://ipinfo.io/' . $ip . '/json');