Gimhoy's Blog

将IP转换成归属地在WordPress中的应用:在评论列表/后台评论列表/评论通知邮件中显示评论者IP所在地

本文最后更新于2013年7月21日,已超过三年没有更新,如果文章内容失效,请反馈给我们,谢谢!

之前说了如何获取真实IP,以及将IP转换成归属地,接下来说说这个功能在WordPress博客中的应用。
 

1.WordPress评论列表中显示评论者IP所在地

效果

ip2add-3

实现方法

在主题目录下的functions.php中,找到评论列表,大概搜get_comment_author_link()即可,在合适的位置加上下面的代码:

<?php if ( is_user_logged_in() ) echo convertip(get_comment_author_ip()); //回复者所在地及网络 ?>

这里以及下面的两个应用都用到了《WordPress获取真实IP,以及将IP转换成归属地》这篇文章中创建的convertip函数,如果用的是其他的IP地址转换函数,修改一下代码中的函数名称即可。如果没有转换IP的函数,请先加入,方法见上文。

为了保护评论者的隐私,这里只有管理员登录之后才能看到评论者的IP信息。
 

2.WordPress后台评论列表中显示评论者IP所在地

效果

ip2add-2

实现方法

在WordPress的wp-admin/includes/class-wp-comments-list-table.php中,找到

comment_author_IP();
echo '</a> ';

在下面增加一句:

echo convertip(get_comment_author_ip());

即可~
 

3.WordPress修改评论审核通知邮件,显示评论者IP所在地

效果

ip2add-1

实现方法

在WordPress的wp-includes/pluggable.php中,查找

Author : %1$s (IP: %2$s , %3$s)

在这行代码的下面加一行代码:

$notify_message .= sprintf( __('IP所在地: %s'), convertip($comment->comment_author_IP) ) . "\r\n";

一共有两处,保存即可。

另外WordPress自带的Whois查询网址whois.arin.net可能打开比较慢,你可以修改成国内的(也可以用我的ip.gimhoy.com(国外服务器)或者ip.gimhoy.cn(国内服务器),格式见图),修改的地方就在上面那行代码的下面几行。



免费获得每月10G空间+10G免费流量
  • Comment (7)
  • Trackback (1)
  • 大肥羊 Mozilla Firefox Windows 2014/03/20 16:30 @Ta

    2.WordPress后台评论列表中显示评论者IP所在地
    这个能不能不该wordpress程序文件?

    #25
    • Gimhoy Google Chrome Windows 2014/03/21 15:20 @Ta

      暂时没有办法。。

  • zz Google Chrome Windows 2013/09/20 14:36 @Ta

    额- -找到原因就是添加2和3以后。就会 评论以后 页面无法显示。而且不发送邮件。但是后台有待审核记录。

    #24
  • 麦田一根葱 Google Chrome Windows 2013/07/29 11:08 @Ta

    这个屌

    #23
    • Gimhoy Google Chrome Windows 2013/07/29 15:57 @Ta

      前面那个挺多人用的。。后面俩是我辛辛苦苦找出来修改的。。。 💡

  • 免费资源部落 Google Chrome Windows 2013/07/22 18:02 @Ta

    博主自己搞了一个IP库吗?

    #22
    • Gimhoy Google Chrome Windows 2013/07/22 18:58 @Ta

      直接用的纯真IP库,用了一个函数转换一下

Leave a Reply

*

*