WordPress显示评论者IP、归属地及运营商信息解决方法

①、在线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函数
**/
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'].' · '.$result['data']['region'].' · '.$result['data']['city'].' · '.$result['data']['isp'];
    }
}
/**
* WordPress 显示评论者IP归属地PHP函数
**/
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'].' · '.$result['data']['region'].' · '.$result['data']['city'].' · '.$result['data']['isp'];
    }
}

将上述代码添加到WordPress主题函数模板文件 functions.php 中并保存。

然后,在 WordPress 评论模板函数中合适的位置插入如下代码即可:

<?php get_locate(get_comment_author_ip());?>

<?php get_locate(get_comment_author_ip());?>

Ps:大部分国内主题都会自定义一个评论模板函数,要找到这个函数很简单,先打开主题下的评论模板文件comments.php文件,找到如下类似代码:

<?php wp_list_comments( 'type=comment&callback=mytheme_comment' ); ?>

<?php wp_list_comments( 'type=comment&callback=mytheme_comment' ); ?>

如上代码中的callback值则是主题自定义的评论模板回调函数,即 mytheme_comment。

接着,只要在主题下全局搜索 mytheme_comment 这个关键词就能找到对应的函数啦!至于添加到哪就自己把握了,每个主题都不一样,我就不赘述了。

这个在线查询评论者归属地的效果忘记截图了,我定义的是是 [中国 · 广东 · 深圳 · 电信] 这种形式,喜欢的可以部署看看。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
, 函数
, wordpress
代码
虚拟运营商号码归属地、虚拟运营商归属地、虚拟运营商归属地查询、运营商归属地查询、解决wordpress需要ftp,以便于您获取更多的相关知识。

时间: 2024-08-16 12:13:12

WordPress显示评论者IP、归属地及运营商信息解决方法的相关文章

Android获取手机SIM卡运营商信息的方法_Android

本文实例讲述了Android获取手机SIM卡运营商信息的方法,对于Android程序设计有非常实用的价值.分享给大家供大家参考之用.具体方法如下: 主要功能代码如下: /** * 获取SIM卡运营商 * * @param context * @return */ public static String getOperators(Context context) { TelephonyManager tm = (TelephonyManager) context .getSystemServic

android 运营商-android 输入手机号获取运营商信息

问题描述 android 输入手机号获取运营商信息 android 输入手机号获取运营商信息,跪求各位大神给一个能运行的demo

修改计算机名或IP后Oracle10g服务无法启动的解决方法_oracle

遇到的问题,问题产生原因不详.症状为,windows服务中有一项oracle服务启动不了,报出如下错误. Windows 不能在 本地计算机 启动 OracleDBConsoleorcl .有关更多信息,查阅系统事件日志.如果这是非 Microsoft 服务,请与服务厂商联系,并参考特定服务错误代码 2 后从网上寻得一贴,问题解决,解决原因不详,反正就是解决了. 问题描述:学校机房母盘安装Oracle10g传输到其它机器,母盘的Oracle可以正常使用,而其它机器启动Oracle服务时无法启动.

小灵通年底有望剩上千万用户仅凭运营商难解决

新浪科技讯 7月7日消息,面对到年底几乎无法完成的小灵通用户清退任务,已让运营商各地分公司头痛,目前运营商虽已提出补偿方案,但很多用户不同意,这种博弈最终可能是单靠运营商无法解决的. 眼下,"坚决做小灵通的钉子户"."做小灵通的钉子户:用到退市最后一刻"等帖子充斥网络,甚至还有说要在网上建群的.按照这些"最后的小灵通用户"的说法,如果中途停止小灵通服务属于单方终止协议. 2009年2月,工信部发出通知要求在2011年年底前完成小灵通的清频退网工作

wordpress显示评论者地理位置与浏览器类型

显示评论者地理位置 将以下函数放到你的functions.php 中 实现的原理是利用新浪和淘宝的IP查询接口,返回IP所属城市 小修了下代码,去掉了挂载点,直接在显示评论时调用函数  代码如下 复制代码 /**  * 使用api获取<a title="查看与城市有关的文章" 城市名  * @param string $ip  * @return string|mixed  */ function wpgo_get_city($ip = null) {     $ip = $ip

运营商着手解决手机170号段银行不识别

首批用户中曝出170号段网站验证短信接收不到.手机运营商标识不显示.不被银行客服系统识别等体验瑕疵. 就在虚拟运营商的170号段开始大规模放号之际,首批用户中曝出网站验证短信接收不到.手机运营商标识不显示.不被银行客服系统识别等体验瑕疵.业界人士指出,相关问题不解决,不仅对虚拟运营商的用户体验带来影响,还将影响到未来逐步扩大的携号转网用户群.在向更多企业开放市场的过程中,通信运营商与应用商网络之间的接口对接,以及全体系监管还需进一步与之配套完善. 问题 170手机收不到网站注册短信 近日,有17

么么直播不能发消息 显示连接已断开5秒后重连解决方法

么么直播不能发消息怎么办?一在直播间发消息,就会显示显示连接已断开,5秒后重连,这到底是为什么呢?让小编告诉你答案,这几种解决方法都可以拿去试试! 么么直播出现这种问题,最大的可能性就是用户的网络信号不好 当手机使用流量或wifi观看直播的时候,如果出现网络问题,肯定会导致直播间的各种问题. 此时可以观看画面,但无法弹幕交流,只需退出直播间,断开网络,重新连接,重新进入直播即可. 当然还有可能是官方服务器出现故障,毕竟直播火热,人数太多挤爆服务器还是很有可能的,这种情况下,就只能等待通知啦!

IP被封在论坛发帖的解决方法

IP是英文 Internet Protocol的缩写,意思是"网络之间互连的协议",也就是为http://www.aliyun.com/zixun/aggregation/11991.html">计算机网络相互连接进行通信而设计的协议.在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则.任何厂家生产的计算机系统,只要遵守 IP协议就可以与因特网互连互通. 正是因为有了IP协议,因特网才得以迅速发展成为世界

jsp下显示中文文件名及绝对路径下的图片解决方法_JSP编程

(1)jsp显示中文文件名的图片 方法一.将Tomcat中的server.xml文件中改为: 复制代码 代码如下: <Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redir