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

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

2018年2月4日 19:23 技术控
0 3
汤不热 恋恋 91视频在线解析播放网站!附源码!
「重要提醒」中国银联的@云闪付的邀请链接 正在暴露你的手机号!

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

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();?>
文章总数
2355+
标签总数
2125+
评论总数
11826+
运营天数
1464+