WordPress 评论显示IP归属地

最近流行显示ip归属地了,不管是抖音、知乎、微博还是各种小网站都在弄这个。这几天又开始折腾博客,把邮件通知加上了,于是今天就想着把显示归属地再加上。随便搜了一下,各种文章还真不少。

不过内容感觉像各种搬运的,实际操作起来也没不是很准确,当然还是有一定的参考价值的。后来找了个整合的代码,参考这里:http://zhangge.net/4960.html。里面提到了一些内容,通过修改 functions.php  和   comments.php来实现效果。很不幸的是我目前使用的主体,在comments文件中很难定位评论生成的位置,我又不想去找各种回调在修改。于是就想着用偷懒的办法。

通过安装WP-UserAgent插件,可以正常的显示浏览器信息,操作系统信息,现在唯一欠缺的就是归属地信息了。

通过下面的步骤就可以实现归属地显示了:

1.下载依赖文件:https://cloud.189.cn/t/Jn6nmu6Zb6vy (访问码:94my)

插件下载完成之后,上传到WP-UserAgent目录下(注意文件路径):

2. 修改修改vim wp-useragent.php 添加以下代码:

在文件头添加:

# 添加到文件头的其他include下面即可
include("show-useragent/show-useragent.php"); 

include("show-useragent/ip2c-text.php");

在显示函数内添加:

// 以下内容添加到 function wpua_display_useragent($wpua_wrapper_div = false)函数
$ip = get_comment_author_IP();
//      echo $ip;
//      echo CID_get_flag_without_template($ip);
//echo convertip($ip);
$wpua_useragent .= CID_get_flag_without_template($ip,true,false);
$wpua_useragent .= convertip($ip);


//添加到以下行的上面
        // Does the user want to display the full useragent string?
        if ($wpua_show_full_ua === 'true')
        {
                // Attach the full ua string to the output.
                $br = (strlen($wpua_useragent) > 0) ? (($wpua_doctype === 'html') ? '<br>' : '<br />') : '';
                $wpua_useragent .= "$br<small>".wpua_str_escape($comment->comment_agent)."</small>";
        }

        if ($wpua_wrapper_div === true)
        {
                // Wrap WP-UserAgent output in div
                $wpua_useragent = "<div class='wp-useragent'>$wpua_useragent</div>";
        }

        // The following conditional will hopefully prevent a problem where
        // the echo statement will interrupt redirects from the comment page.
        if (empty($_POST['comment_post_ID']) || is_admin()) echo $wpua_useragent;

3. 到这里基本就能显示归属地了,但是国旗显示可能会存在问题,这个是由于插件的资源搜索路径导致的,最简单的把那就是把show-useragent直接上传到当前激活主题的文件夹下一份。现在就可以正常的显示归属地信息:

4. 浏览器信息,操作系统信息在WP-UserAgent插件的设置功能中修改即可,后台也可以显示归属地等相关信息。

PS:建议修改之前先备份插件,修改过程中如果出错可以直接恢复。

其他的一些相关资源:

https://github.com/obaby/baby-word-press

欢迎评论测试自己的归属地~~ 😛 

☆版权☆

* 网站名称:obaby@mars
* 网址:https://lang.ma/
* 个性:https://oba.by/
* 本文标题: 《WordPress 评论显示IP归属地》
* 本文链接:https://www.lang.ma/2022/08/10404
* 短链接:https://oba.by/?p=10404
* 转载文章请标明文章来源,原文标题以及原文链接。请遵从 《署名-非商业性使用-相同方式共享 2.5 中国大陆 (CC BY-NC-SA 2.5 CN) 》许可协议。


You may also like

10 comments

    1. 公主 Queen 
      Google Chrome 118 Google Chrome 118 Mac OS X 10.15 Mac OS X 10.15 cn中国–山东–青岛 联通

      自己翻翻代码啊,这个不难找,通过关键字搜索也能搜到啊

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注