为博客评论添加IP归属地

近期国内各大平台都在添加IP归属地,我也想趁这股风潮添加一下。

在主题的issues中找到了一款兼容插件[1]

但很可惜的是由于使用的是免费IP库,所以不支持IPV6,博客很早开启了IPV6支持,导致一部分评论不显示IP归属地,于是我就将其安装上后暂时搁置了。

今天访问友链网站,注意这样到一篇文章[2]

https://mcenjoy.cn/1241/
为博客评论添加IP归属地-随意之光博客

据了解,其IPV6支持是通过访问ip-api.com的API获取,于是参考其代码对插件进行了修改,现在可以显示所有IP属地。

修改的部分代码

function curl_get_https($url){
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    $tmpInfo = curl_exec($curl);
    curl_close($curl);
    return $tmpInfo;
}
if (!function_exists('get_user_city_e')) :
	function get_user_city_e($ip){
$result = curl_get_https("https://ip-api.com/json/".$ip."?lang=zh-CN");
$json=json_decode($result,true);
 
if ($json["status"]=="success" && $json["country"]=="中国") {
    $c = $json['regionName'];
}
elseif($json["status"]=="success"){
  $c = $json['country'];

}
else{
    $c = " 未知 ";
}
  return $c;}            
endif;
if (!function_exists('easy_location_handle_comment')) :
	function easy_location_handle_comment($comment_text)
	{
		$comment_ID = get_comment_ID();
		$comment = get_comment($comment_ID);
		if ($comment->comment_author_IP && get_user_city($comment->comment_author_IP)) {
			$comment_text .= '<div class="comment--location" id="offline"><i class="fa fa-map-marker" aria-hidden="true"></i>&nbsp;IP属地(仅供参考):' . get_user_city($comment->comment_author_IP) . '</div>' ;
		}
		elseif($comment->comment_author_IP){
	    	$comment_text .= '<div class="comment--location" id="api"><i class="fa fa-map-marker" aria-hidden="true"></i>&nbsp;IP属地(仅供参考):' . get_user_city_e($comment->comment_author_IP) . '</div>' ;
		}
		else{
		$comment_text .= '<div class="comment--location">未获取评论IP地址</div>'    ;
		}
		return $comment_text;
	}
endif;

匆匆修改,可能会存在问题,欢迎进行指正。

《为博客评论添加IP归属地》(https://blog.suiyil.cn/3358.html)为随意之光发布于随意之光博客,其中原创内容均以知识共享署名-非商业性使用-以相同方式共享 4.0 国际许可协议(CC BY-NC-SA 4.0)进行许可,转载与引用请注明出处,详见版权协议与免责声明

评论

  1. Windows
    3周前
    2022-9-03 12:46:58

    感觉不错,我吸收了(~ ̄▽ ̄)~ 谢谢大佬分享

     IP属地(仅供参考):广东
  2. 博主
    Windows
    4周前
    2022-8-25 17:18:42

    测试评论

     IP属地(仅供参考):山东省
    • 峰峰
      随意之光
      Android
      4周前
      2022-8-25 17:21:07

      ipv6

       IP属地(仅供参考):山东省

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
2233娘 ©bilibili
mao,来自:https://github.com/XiaoLFeng/Emoji
mao,来自:https://github.com/XiaoLFeng/Emoji
颜文字
Emoji
小恐龙
花!
2233娘
mao
mao2
上一篇