分享WordPress显示评论者IP的归属地及运营商信息的
导读:网站搭建网站搭建之前分享过一篇《WordPress 显示访客 UA 信息:Show UserAgent 纯代码轻度汉化版》的部署教程,算是满足了 WordPress 折腾爱好者建站技术网网站技术分析。
之前分享过一篇《WordPress 显示访客 UA 信息:Show UserAgent 纯代码轻度汉化版》的部署教程,算是满足了 WordPress 折腾爱好者的空虚和寂寞,不过这个插dede手机模板件只能显示国籍、操作系统和浏览器三种信息,看来还有一定的折腾空间。
前不久,有朋友留言说同时集成了 Show UserAgent 和 IP 归属地的文字信息。看了下还是挺不错的,连运营商都给肉出来了。
于是,张戈试着折腾了下,目前已经用了有一段时间了。测试了在线获取和本地数据 2 种方案,都还不错!不过在线获取方式,若是没有做静态化可能会稍微拖慢加载速度。
下面开始分享。
一、在线方案
①、在线 API
在线查询 IP 信息的 API 有很多,比如淘宝、百度和新浪都有 IP 信息查询的 API 接口,地址如下:
百度:http://apistore.baidu.com/microservice/iplookup?ip=114.114.114.114 淘宝:http://ip.taobao.com/service/getIpInfo.php?ip=114.114.114.114 新浪:http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=114.114.114.114
请求方式都是 GET,返回都是 json 格式。
如何将这个东东应用到 WordPress 评论列表呢?很简单,挑一个用得比较多的淘宝作为范例吧!喜欢其他的自行参考修改即可。
②、PHP 代码
/** * WordPress 显示评论者IP归属地PHP函数 * http://zhangge.net/5060.html **/ function get_locate($ip) { if(empty($ip)) $ip = get_comment_author_IP(); $ch = curl_init(); $timeout = 5; curl_setopt ($ch, CURLOPT_URL, 'http://ip.taobao.com/service/getIpInfo.php?ip='.$ip); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents = curl_exec($ch); curl_close($ch); $result = json_decode($file_contents,true); if ($result['data']['country'] != '中国') { return $result['data']['country']; } else { return $result['data']['country'].' ·&dede免费模板amp;nbsp;'.$result['data']['region'].' · '.$result['data']['city'].' · '.$result['data']['isp']; } }将上述代码添加到 WordPress 主题函数模板文件 functions.php 中并保存。
声明: 本文由我的SEOUC技术文章主页发布于:2023-07-23 ,文章分享WordPress显示评论者IP的归属地及运营商信息的主要讲述运营商,归属地,IP网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_35102.html