WordPress 前端技巧:利用新浪IP库获取用户所在城市信息!

付费节点推荐


免费节点


节点使用教程


快过年了,小编又没事开始研究研究最近有没有什么好玩的WP的技巧功能,今天给大家分享的是利用新浪的IP库,获取访问用户的ip归属地!

大家可以把这个放到网站首页或者用户中心等页面里,增加用户体验!

第一步:将下列代码放置到主题模板函数 functions.php

//获取用户IP地址
function getip(){
    if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) {
        $ip = getenv("HTTP_CLIENT_IP");
    } else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) {
        $ip = getenv("HTTP_X_FORWARDED_FOR");
    } else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) {
        $ip = getenv("REMOTE_ADDR");
    } else  if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
        $ip = $_SERVER['REMOTE_ADDR'];
    } else {
        $ip = "unknown";
    }
    return $ip;
}
// 新浪IP查询接口获取IP所在地
function getlocation($ip='') {
    empty($ip) && $ip = getip();
    if($ip=="127.0.0.1") return "本机地址";	
    $api = "https://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=$ip"; 
    $json = @file_get_contents($api); 
    $arr = json_decode($json,true);
    $country = $arr['country']; 
    $province = $arr['province']; 
    $city = $arr['city']; 
    if((string)$country == "中国"){
        if((string)($province) != (string)$city){
            $_location = $province.$city;
        }else{
            $_location = $country.$city;      
        }
    }else{
        $_location = $country;
    }
    return $_location;
}

第二步:输出用户地理位置

<?php echo getlocation();?>

未经允许不得转载:Bcoder资源网 » WordPress 前端技巧:利用新浪IP库获取用户所在城市信息!

相关推荐

赞 (2)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册