document.writeln('');
当前位置:首页 > 免费源码

子比主题评论和用户主页显示IP归属地[本地纯真数据库配置教程]

游戏科技网2026年09月15日 03:06免费源码40

我个人不是很喜欢使用太平洋接口,恰好我会一点点php,就随随便便搞了个本地纯真数据库接口,IPQuery.class.php,qqwry.dat我会放到蓝奏网盘里

教程开始

1 配置IPQuery.class.php、qqwry.dat文件

文件地址 https://ymkuz.lanzouy.com/ihvFV152jecj

把压缩包解压到/wp-content/themes/zibll/inc/functions/目录里面,就可以开始操作了

2 配置functions.php

大家找到/wp-content/themes/zibll/inc/functions/funcitons.php这个文件

大概 是 2509行 到 2577行 里面的内容

这个函数,把里面的内容替换为

function zib_get_geographical_position_by_ip($ip)
{
if (!$ip || strstr($ip, 0.0.0.) || strstr($ip, 192.168.) || strstr($ip, 127.0.)) {
return false;
}
$sdk = _pz(ip_addr_sdk);
if ($sdk === qq) {
$ip_addr_sdk = _pz(ip_addr_sdk_qq);
if (!empty($ip_addr_sdk[appkey])) {
return zib_get_geographical_position_by_qq($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
}
}
if ($sdk === cz) {
$ip_addr_sdk = _pz(ip_addr_sdk_cz);
return zib_get_geographical_position_by_cz($ip);
}
if ($sdk === amap) {
$ip_addr_sdk = _pz(ip_addr_sdk_amap);
if (!empty($ip_addr_sdk[appkey])) {
return zib_get_geographical_position_by_amap($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
}
}
if ($sdk === polling) {
$qq_data = array();
$amap_data = array();
$data = array();
//通过qq查询
$ip_addr_sdk = _pz(ip_addr_sdk_qq);
if (!empty($ip_addr_sdk[appkey])) {
$qq_data = zib_get_geographical_position_by_qq($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
if (!empty($qq_data[province])) {
return $qq_data;
}
}
//通过高德查询
$ip_addr_sdk = _pz(ip_addr_sdk_amap);
if (!empty($ip_addr_sdk[appkey])) {
$amap_data = zib_get_geographical_position_by_amap($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
if (!empty($amap_data[province])) {
return $amap_data;
}
}
//通过本地纯真数据库查询
if ($sdk === cz) {
$ip_addr_sdk = _pz(ip_addr_sdk_cz);
return zib_get_geographical_position_by_cz($ip);
}
//太平洋公共接口
$data = zib_get_geographical_position_by_pconline($ip);
if (!empty($data[province])) {
return $data;
}
//都没有身份,则进行对比国家
if (!empty($qq_data[nation])) {
return $qq_data;
}
if (!empty($amap_data[nation])) {
return $amap_data;
}
if (!empty($data[nation])) {
return $data;
}
return false;
}
return zib_get_geographical_position_by_pconline($ip);
}
function zib_get_geographical_position_by_ip($ip)
{
    if (!$ip || strstr($ip, 0.0.0.) || strstr($ip, 192.168.) || strstr($ip, 127.0.)) {
        return false;
    }

    $sdk = _pz(ip_addr_sdk);

    if ($sdk === qq) {
        $ip_addr_sdk = _pz(ip_addr_sdk_qq);
        if (!empty($ip_addr_sdk[appkey])) {
            return zib_get_geographical_position_by_qq($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
        }
    }

    if ($sdk === cz) {
        $ip_addr_sdk = _pz(ip_addr_sdk_cz);
            return zib_get_geographical_position_by_cz($ip);
    }

    if ($sdk === amap) {
        $ip_addr_sdk = _pz(ip_addr_sdk_amap);
        if (!empty($ip_addr_sdk[appkey])) {
            return zib_get_geographical_position_by_amap($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
        }
    }

    if ($sdk === polling) {
        $qq_data   = array();
        $amap_data = array();
        $data      = array();

        //通过qq查询
        $ip_addr_sdk = _pz(ip_addr_sdk_qq);
        if (!empty($ip_addr_sdk[appkey])) {
            $qq_data = zib_get_geographical_position_by_qq($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
            if (!empty($qq_data[province])) {
                return $qq_data;
            }
        }

        //通过高德查询
        $ip_addr_sdk = _pz(ip_addr_sdk_amap);
        if (!empty($ip_addr_sdk[appkey])) {
            $amap_data = zib_get_geographical_position_by_amap($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]);
            if (!empty($amap_data[province])) {
                return $amap_data;
            }
        }

        //通过本地纯真数据库查询
        if ($sdk === cz) {
            $ip_addr_sdk = _pz(ip_addr_sdk_cz);
            return zib_get_geographical_position_by_cz($ip);
        }

        //太平洋公共接口
        $data = zib_get_geographical_position_by_pconline($ip);
        if (!empty($data[province])) {
            return $data;
        }

        //都没有身份,则进行对比国家
        if (!empty($qq_data[nation])) {
            return $qq_data;
        }

        if (!empty($amap_data[nation])) {
            return $amap_data;
        }

        if (!empty($data[nation])) {
            return $data;
        }

        return false;
    }

    return zib_get_geographical_position_by_pconline($ip);
}
function zib_get_geographical_position_by_ip($ip) { if (!$ip || strstr($ip, 0.0.0.) || strstr($ip, 192.168.) || strstr($ip, 127.0.)) { return false; } $sdk = _pz(ip_addr_sdk); if ($sdk === qq) { $ip_addr_sdk = _pz(ip_addr_sdk_qq); if (!empty($ip_addr_sdk[appkey])) { return zib_get_geographical_position_by_qq($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]); } } if ($sdk === cz) { $ip_addr_sdk = _pz(ip_addr_sdk_cz); return zib_get_geographical_position_by_cz($ip); } if ($sdk === amap) { $ip_addr_sdk = _pz(ip_addr_sdk_amap); if (!empty($ip_addr_sdk[appkey])) { return zib_get_geographical_position_by_amap($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]); } } if ($sdk === polling) { $qq_data = array(); $amap_data = array(); $data = array(); //通过qq查询 $ip_addr_sdk = _pz(ip_addr_sdk_qq); if (!empty($ip_addr_sdk[appkey])) { $qq_data = zib_get_geographical_position_by_qq($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]); if (!empty($qq_data[province])) { return $qq_data; } } //通过高德查询 $ip_addr_sdk = _pz(ip_addr_sdk_amap); if (!empty($ip_addr_sdk[appkey])) { $amap_data = zib_get_geographical_position_by_amap($ip, $ip_addr_sdk[appkey], $ip_addr_sdk[secretkey]); if (!empty($amap_data[province])) { return $amap_data; } } //通过本地纯真数据库查询 if ($sdk === cz) { $ip_addr_sdk = _pz(ip_addr_sdk_cz); return zib_get_geographical_position_by_cz($ip); } //太平洋公共接口 $data = zib_get_geographical_position_by_pconline($ip); if (!empty($data[province])) { return $data; } //都没有身份,则进行对比国家 if (!empty($qq_data[nation])) { return $qq_data; } if (!empty($amap_data[nation])) { return $amap_data; } if (!empty($data[nation])) { return $data; } return false; } return zib_get_geographical_position_by_pconline($ip); }

3 配置zib-tool.php

大家找到/wp-content/themes/zibll/inc/functions/zib-tool.php这个文件

拉到最下面,粘贴这个函数

function zib_get_geographical_position_by_cz($ip, $debug = false)
{
//通过本地纯真数据库来获取
require_once(IPQuery.class.php);
$ipcx = new IPQuery();
$addr = $ipcx->query($ip);
$response=array(Country=>$addr[pos]);
$data = array(
ip => $ip,
nation => !empty($addr[pos]) ? $addr[pos] : ,
province => !empty($addr[pos]) ? $addr[pos] : ,
city => !empty($addr[pos]) ? $addr[pos] : ,
sdk => pconline,
);
return $data;
}
function zib_get_geographical_position_by_cz($ip, $debug = false)
{

    //通过本地纯真数据库来获取
    require_once(IPQuery.class.php);
    $ipcx = new IPQuery();
    $addr = $ipcx->query($ip);
    $response=array(Country=>$addr[pos]);

    $data = array(
        ip       => $ip,
        nation   => !empty($addr[pos]) ? $addr[pos] : ,
        province => !empty($addr[pos]) ? $addr[pos] : ,
        city     => !empty($addr[pos]) ? $addr[pos] : ,
        sdk      => pconline,
    );

    return $data;
}
function zib_get_geographical_position_by_cz($ip, $debug = false) { //通过本地纯真数据库来获取 require_once(IPQuery.class.php); $ipcx = new IPQuery(); $addr = $ipcx->query($ip); $response=array(Country=>$addr[pos]); $data = array( ip => $ip, nation => !empty($addr[pos]) ? $addr[pos] : , province => !empty($addr[pos]) ? $addr[pos] : , city => !empty($addr[pos]) ? $addr[pos] : , sdk => pconline, ); return $data; }

4 配置action.php

大家找到/wp-content/themes/zibll/inc/options/action.php这个文件

大概是在第 699行 粘贴下面代码

case cz:
$ip_addr_sdk = _pz(ip_addr_sdk_amap);
$test = zib_get_geographical_position_by_cz($ip, true);
if (!$test) {
echo (json_encode(array(error => 1, msg => 网络数据获取失败,请确保服务器网络畅通)));
exit;
}
if (!isset($test[nation])) {
$test[ip] = $ip;
echo (json_encode(array(error => 1, msg => 本地纯真数据库接口请求失败,错误信息:<br> . json_encode($test, JSON_UNESCAPED_UNICODE))));
exit;
}
echo (json_encode(array(error => 0, msg => 本地纯真数据库接口请求成功<br> . json_encode($test, JSON_UNESCAPED_UNICODE))));
exit;
break;
case cz:
            $ip_addr_sdk = _pz(ip_addr_sdk_amap);

            $test = zib_get_geographical_position_by_cz($ip, true);

            if (!$test) {
                echo (json_encode(array(error => 1, msg => 网络数据获取失败,请确保服务器网络畅通)));
                exit;
            }

            if (!isset($test[nation])) {
                $test[ip] = $ip;
                echo (json_encode(array(error => 1, msg => 本地纯真数据库接口请求失败,错误信息:<br> . json_encode($test, JSON_UNESCAPED_UNICODE))));
                exit;
            }

            echo (json_encode(array(error => 0, msg => 本地纯真数据库接口请求成功<br> . json_encode($test, JSON_UNESCAPED_UNICODE))));
            exit;
            break;
case cz: $ip_addr_sdk = _pz(ip_addr_sdk_amap); $test = zib_get_geographical_position_by_cz($ip, true); if (!$test) { echo (json_encode(array(error => 1, msg => 网络数据获取失败,请确保服务器网络畅通))); exit; } if (!isset($test[nation])) { $test[ip] = $ip; echo (json_encode(array(error => 1, msg => 本地纯真数据库接口请求失败,错误信息:<br> . json_encode($test, JSON_UNESCAPED_UNICODE)))); exit; } echo (json_encode(array(error => 0, msg => 本地纯真数据库接口请求成功<br> . json_encode($test, JSON_UNESCAPED_UNICODE)))); exit; break;

5 配置admin-options.php

大家找到/wp-content/themes/zibll/inc/options/admin-options.php这个文件

大概是在 9622 到 9633行 的 内容,替换为下面代码

array(
id => ip_addr_sdk,
default => null,
title => IP归属地接口选择,
type => "radio",
inline => true,
options => array(
polling => __(轮流查询, zib_language),
qq => __(腾讯位置服务, zib_language),
amap => __(高德位置服务, zib_language),
cz => __(本地纯真数据库接口(无需配置), zib_language),
null => __(太平洋网络公共接口(无需配置), zib_language),
),
array(
                id      => ip_addr_sdk,
                default => null,
                title   => IP归属地接口选择,
                type    => "radio",
                inline  => true,
                options => array(
                    polling => __(轮流查询, zib_language),
                    qq      => __(腾讯位置服务, zib_language),
                    amap    => __(高德位置服务, zib_language),
                    cz    => __(本地纯真数据库接口(无需配置), zib_language),
                    null    => __(太平洋网络公共接口(无需配置), zib_language),
                ),
array( id => ip_addr_sdk, default => null, title => IP归属地接口选择, type => "radio", inline => true, options => array( polling => __(轮流查询, zib_language), qq => __(腾讯位置服务, zib_language), amap => __(高德位置服务, zib_language), cz => __(本地纯真数据库接口(无需配置), zib_language), null => __(太平洋网络公共接口(无需配置), zib_language), ),

大概是在 9686 到 9697行 的 内容,替换为下面代码

array(
content => <div><b>填写配置并保存主题配置后可在此测试接口</b></div>
<ajaxform class="ajax-form" ajax-url=" . admin_url(admin-ajax.php) . ">
<div class="flex ac hh">
<select class="mt6 mr10" ajax-name="sdk"><option value="">太平洋网络公共接口</option><option value="cz">本地纯真数据库</option><option value="qq">腾讯位置服务</option><option value="amap">高德位置服务</option></select>
<input class="mt6 mr10" type="text" style="max-width:300px;" ajax-name="ip" placeholder="输入一个IP地址或留空"><a href="javascript:;" class="but jb-yellow ajax-submit mt6"><i class="fa fa-paper-plane-o"></i> 测试一下</a></div>
<div class="mt10 ajax-notice"></div>
<input type="hidden" ajax-name="action" value="test_ip_addr_sdk">
</ajaxform>,
style => warning,
type => submessage,
),
array(
                content => <div><b>填写配置并保存主题配置后可在此测试接口</b></div>
                <ajaxform class="ajax-form" ajax-url=" . admin_url(admin-ajax.php) . ">
                <div class="flex ac hh">
                <select class="mt6 mr10" ajax-name="sdk"><option value="">太平洋网络公共接口</option><option value="cz">本地纯真数据库</option><option value="qq">腾讯位置服务</option><option value="amap">高德位置服务</option></select>
                <input class="mt6 mr10" type="text" style="max-width:300px;" ajax-name="ip" placeholder="输入一个IP地址或留空"><a href="javascript:;" class="but jb-yellow ajax-submit mt6"><i class="fa fa-paper-plane-o"></i> 测试一下</a></div>
                <div class="mt10 ajax-notice"></div>
                <input type="hidden" ajax-name="action" value="test_ip_addr_sdk">
                </ajaxform>,
                style   => warning,
                type    => submessage,
            ),
array( content => <div><b>填写配置并保存主题配置后可在此测试接口</b></div> <ajaxform class="ajax-form" ajax-url=" . admin_url(admin-ajax.php) . "> <div class="flex ac hh"> <select class="mt6 mr10" ajax-name="sdk"><option value="">太平洋网络公共接口</option><option value="cz">本地纯真数据库</option><option value="qq">腾讯位置服务</option><option value="amap">高德位置服务</option></select> <input class="mt6 mr10" type="text" style="max-width:300px;" ajax-name="ip" placeholder="输入一个IP地址或留空"><a href="javascript:;" class="but jb-yellow ajax-submit mt6"><i class="fa fa-paper-plane-o"></i> 测试一下</a></div> <div class="mt10 ajax-notice"></div> <input type="hidden" ajax-name="action" value="test_ip_addr_sdk"> </ajaxform>, style => warning, type => submessage, ),

使用教程

如果,你已经完成上面的操作后,就可以使用了,方法是到你的子比主题设置,到->扩展&增强/ip归属地,就可以看到有一个 本地纯真数据库接口(无需配置) 的选项的,勾选,保存,可以到下面测试一下。

  • 一定要完成上面的操作,并且把支持库和qqwry.dat 文件复制好!
  • 如有什么问题,请在评论区指出

效果展示

“子比主题评论和用户主页显示IP归属地[本地纯真数据库配置教程]” 的相关文章

(PC+WAP)绿色草坪地坪施工pbootcm网站模板 操场人造草坪网站源码下载

(PC+WAP)绿色草坪地坪施工pbootcm网站模板 操场人造草坪网站源码下载

(PC+WAP)绿色草坪地坪施工pbootcms网站模板 操场人造草坪网站源码下载pbootcms内核开发的网站模板,该模板适用于人造草坪网站、草坪地坪网站等企业,当然其他行业也可以做,只需要把文字图片换成其他行业的即可;PC+WAP,同一个后台,数据即时同步,简单适用!附带测试数据!友好的seo,所有页面均都能完全自定义标题/关键词/描述,PHP程序,安全、稳定、快速;用低成本获取源源不断订单!…

(自适应手机版)响应式统一战线政府单位机构类网站源码 红色政府部门机构网站模板

(自适应手机版)响应式统一战线政府单位机构类网站源码 红色政府部门机构网站模板

本套织梦模板采用织梦最新内核开发的模板,这款模板使用范围广,不仅仅局限于一类型的企业,政府部门、单位机构类的网站都可以用该模板。你只需要把图片和文章内容换成你的即可,颜色都可以修改,改完让你耳目一新的感觉!布局规整,利于用户体验,手工书写DIV+CSS,代码精简。 同一个后台管理 三网合一简单方便,体验好! 1、该模板代码干净整洁; 2、效果相当的炫酷,相当简洁大气高端,模板简单,全部已…

0间隔24h采集线报+源码的资源网

0间隔24h采集线报+源码的资源网

1.更新下载类目的采集 及 导入 网站程序:jizhiCMS + 高仿新版某刀资源网模板 采集程序: 蓝天采集 + 已对接好资源站规则 网站图片及蓝天采集规则 安装教程在下面⬇⬇⬇⬇⬇⬇⬇                 链接:https://pan.baidu.com/s/1QFHWi3urqUAzGHxyco…

100多套官网HTML源码 前端静态页面源码

100多套官网HTML源码 前端静态页面源码

简介: 104套官网源码静态html页面APP下载页面HTML源码,多年收藏精品HTML官网源码104套所有行业均可修改使用。人工精选源码每一套都是精品,纯静态页面无后台 下载连接(复制直接下载) https://wp.123vo.cn/index/share/code/jq2ENvLPb1 内容看完了…

11周精通python计划(完结)

11周精通python计划(完结)

11周精通python计划(完结)此内容为付费资源,请付费后查看¥38 限时特惠¥138黄金会员免费钻石会员免费登录购买…

123网盘

123网盘

简介:123网盘解析PHP版本源码是一种非常实用的工具,可以方便地帮助用户在网页上直接解析出其它网站中的资源,并提供下载链接。当用户需要获取某些资源时,往往需要通过各种搜索引擎或者专业的资源网站进行查找,而且很多时候找到了资源链接后还需要进行各种繁琐的操作才能完成下载。而使用 123网盘解析PHP版本源码,只需在相关网站上找到资源链接,然后粘贴到 123网盘解析PHP版本源码中进行解析,即可获得简…