安利一款Hansome主题专用的UserAgent插件

前两天Airs_Lau同学说来一篇关于评论UA的文章,本来一开始就打算咕咕咕的٩(ˊᗜˋ*)و,还不是因为我技术菜人又懒(我不要面子的嘛)。
刚好今天闲下来,就把自己魔改的UserAgent插件打包了下,代码水平有限,望多多指正。

食用指南

  1. 操作前请做好相应备份工作
  2. 此插件只适用于Handsome主题,未对其它主题优化!!!
  3. 请先将插件置于Typechoplugins目录下,且插件目录名应为UserAgent,注意大小写,否则将无法正常食用!!!
  4. 修改Handsome主题,component目录下的comments.php代码文件,大概第60~80行左右,
<span class="comment-author vcard">
    <b class="fn"><?php echo $author; ?></b><?php echo $Identity; ?>
</span>

添加代码<?php UserAgent_Plugin::get_useragent($comments->agent,$comments->ip); ?> ,修改后代码如下:

<span class="comment-author vcard">
    <b class="fn"><?php echo $author; ?></b><?php echo $Identity; ?><?php UserAgent_Plugin::get_useragent($comments->agent,$comments->ip); ?>
</span>

获取真实IP

Typecho开启CDN后,可能无法获取访客真实IP,只能取得CDN节点IP,为此可以在Typecho博客网站的根目录的config.inc.php插入下面的代码:

//** 防止CDN造成无法获取客户真实IP地址 */
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) 
{
    $list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
    $_SERVER['REMOTE_ADDR'] = $list[0];
}

更新日志

2020-3-5

  • 说不准新增了部分BUG😂呢,记得反馈哦!
  • 移除不稳定的淘宝Api(IP)
  • 离线IP库查询位置信息去重,之前会出现 中国 天津 天津 (感谢 任宝硕 建议)
  • 更新离线IP库为 ipipfree.ipdb ,理论上兼容IPIP官方 全球 IPv4 地级市精度离线库(China:免费版,每周高级版,每日标准版,每日高级版,每日专业版,每日旗舰版)[然而,我也只用得起免费版,所以就不支持IPV6咯]

     此次更新离线IP库,部分文件来源GITHUB,为方便安装使用插件,已使用 composer 生成且引入 autoload.php 文件。
    (其实关于 composer,你也可以直接在Typecho根目录生成并引入,只是为了方便萌新们使用,才移入到UserAgent插件目录下。)

  • 此次更新仅是维护,也不是很建议非要更新,稳定使用才是最好的。

2020-1-18

  • 更新 Instant.page3.0.0 版本
  • 更新微软 EDGE 移动端浏览器
  • 已测试 Handsome 6.0.0 可以放心食用,有 CSS 样式错误的,请先确认是否全新主题安装此插件,且无魔改痕迹。我看过很多人反馈的,都是之前用过别人的插件,样式修改后遗留的 CSS 代码冲突,切记!

我也在这里提前祝大家新年快乐、心想事成、万事如意、身体健康、财源广进、金玉满堂……

Tips:切记先禁用插件后操作,更新完毕请刷新浏览器缓存

文件下载

## Hash校验
Ver: 1.1.1
MD5: 5981A7EBD7464012A72BDC05191B8C47
SHA1: 51BEB80AD6FF9FBD9F949A421ADC410C87D18B3A
CRC32: 4960F621

##------##

Ver: 1.1.0
MD5: 871706942298EB0EED34D2DBBC297486
SHA1: 963515AFB4DB710FC764DBD91B0C1FCABCF326BC
CRC32: 15A027F0

效果预览

松鼠大大

若不是真的废物,谁又愿意混吃等死呢?

249 条评论

  1. 大佬的这个 下载按钮怎么做的 ::funny:02::

    • 如果是最新的handsome主题,编辑器里面会有显示的

      • 问题是我没用 handsome 带的编辑器~。~

  2. 好的谢谢

  3. 食用成功,建议插件里加上是否仅博主可见

    • 建议已收到,依旧秘技八重咕,咕咕咕ヾ(≧∇≦*)ゝ

      • 小鬼宝

        为什么我加了没效果

        • 有正确安装和修改代码嘛?

          • 小鬼宝

            不是把那段代码加在那个下面嘛?

          • 嗯,加代码,,你的站点是啥,我瞅瞅看?

          • 小鬼宝
          • 好的,没有看到任何评论留言啊。你在任意文章评论区测试下,发布几条测试评论呢,

          • 小鬼宝

            木有鸭

          • 你自己也看不到UA信息嘛?
            你贴一下comments.php相关位置的代码我看看呢,
            直接发我邮箱吧:admin@doge.uk

    • 新增:UA仅博主可见 (感谢 @mlch911 建议)
      新功能已准备好,咕了一个月额٩(ˊᗜˋ*)و

  4. 老松鼠真牛p

  5. 资瓷

  6. Hansome是什么
    UserAgent是什么

  7. 不错不错,拿走了

    • ( ,,´・ω・)ノ"(´っω・`。) 晚上好吖

      • 早上好,早上好

  8. 好啊,好啊

  9. 我按照教程配置好了,怎么和博主的不一样?
    我的站:https://jr.2free.cn/
    求解 ::aru:frown::

    • 好像你魔改的东西比较多,可能是css样式冲突 ::twemoji:shy::

      • 哪的CSS?

        • 能帮我看看嘛?

          • 你好像自己添加了css,,查看源代码第66行

          • 你QQ多少,QQ聊

  10. 评论框的背景图片偷走了 ::funny:02::

  11. 1.0.5版本必须勾选显示IP位置信息,不勾选就提示400行错误 ::aru:knife::

    • 有具体提示信息嘛

    • 我想我应该知道了,属于变量未定义吧,这个当时没考虑到,现在正在修呢

      • Notice: Undefined variable: code_ip in /www/wwwroot/www.14bk.cn/usr/plugins/UserAgent/Plugin.php on line 400
        好吧

        •  ̄﹃ ̄嗯嗯,果然是这个,等待修复吧,,今天也有小伙伴反映了1.0.6也有同样的情况,,
          我一般都是选择输出部分调试信息,所以我很少看到报错信息,emmmmm,

          • 嗯啊, ::funny:03::

          • 已更新,现在试试呢,看看还有木有错误提示 ::funny:63::

          • 好了没有了,谢博主 ::funny:03::

          • ::aru:shy2:: 嗯,嘿嘿,别熬夜了,早些睡

          • 嗯呢,你也是 ::aru:cheer::

  12. 用了新版,没问题了。游客方式也正常了。

  13. 请选择 UA 信息展示效果
    鼠标经过或悬停时显示UA信息 仅博主可见

    2者均不选择时候。会报错!Warning: in_array() expects parameter 2 to be array, null given in /usr/plugins/UserAgent/Plugin.php on line 389

    Warning: in_array() expects parameter 2 to be array, null given in /usr/plugins/UserAgent/Plugin.php on line 414

    • 好的,收到,问题已经记录了, ::funny:16::

    • Warning: in_array() 报错已修复ヾ(´・ ・`。)ノ"

  14. he

    出现以下问题
    /www/wwwroot@xx.cn/usr/plugins/UserAgent/Plugin.php on line 389

    Warning: in_array() expects parameter 2 to be array, null given in /www/wwwroot/xx.cn/usr/plugins/UserAgent/Plugin.php on line 414

    • (´இ皿இ`)修复了,试试看是否还有问题吧

  15. Notice: Undefined offset: 1 in /www/wwwroot/usr/plugins/UserAgent/Plugin.php on line 265

    大佬这个一般是什么问题?

    • 看了下,未定义错误,可能是数组下标溢出,这行代码对应的是:
      $title = 'ViVO '. $matches[1];
      估计是解析的UA有问题(可能是与我之前样例的UA格式不一样),我这边暂时没有比较全的的VIVO UA信息可供参考,感谢反馈! ::funny:09::

    • 报错的BUG,暂时屏蔽了,试试看能否正常使用吧

  16. Notice: Undefined offset: 1 in /home/ftp/4/43077/e74e.cn/usr/plugins/UserAgent/Plugin.php on line 256 报错!尚未修复!

    • 好像是其它问题,我先看看

    • 能提供下评论时的UA信息嘛,方便我查询问题,谢谢

    • 暂时屏蔽掉了,试试能否正常使用吧 ::aru:crying::

  17. 我也出现了这种情况
    Notice: Undefined offset: 1 in /www/wwwroot/handsome.52aicy.cn/usr/plugins/UserAgent/Plugin.php on line 265

    • 是用的最新版嘛 ::aru:crying::

      • 1.0.8的版本

        • 试一下1.0.10,昨天我改了部分bug,看看还有木有提示

          • 好了 谢谢 ::aru:tongue::

  18. 为什么我用了最新版 按照教程改好
    管理员发送评论 然后转一下圈 刷新网页 就没了。。评论也没发成功

    • 评论未成功,是你的评论被拦截了嘛?

  19. 热心市民

    为什么我的鼠标指向没有详细的信息

  20. Notice: Undefined property: stdClass::$code in /www/wwwroot/123mtr.top/usr/plugins/UserAgent/Plugin.php on line 492

    我的评论出现了以上问题咋办啊这个⌇●﹏●⌇

    • 是用的最新版嘛,要是最新版有问题,那我先记录下,下班回去看看(☆ω☆)

      • 我不知道是不是最新版 ::aru:crying::

        • 这篇文章附件就是最新版(1.0.10),是用的这个嘛?

          • 不是,我换换

          • 你网站好慢啊,我下载插件贼慢

          • 国外渣渣服务器,日常卡顿,😂

          • 已经恢复了,谢谢 ::twemoji:tiaomei::

          • 不客气😆

          • 你网站好慢啊,我下载插件贼慢

          • 你网站好慢啊,我下载插件贼慢

          • 你网站好慢啊,我下载插件贼慢

          • 你网站好慢啊,我下载插件贼慢

          • 你网站好慢啊,我下载插件贼慢

      • 我不知道是不是最新版 ::twemoji:shy::

      • 我不知道是不是最新版 ::twemoji:shy::

发表评论

您的电子邮件地址不会被公开,必填项已用*标注。

相关推荐

Typecho折腾小笔记

一、使Typecho支持emoji表情 !> Typecho默认不支持emoji表情,其实不是程序的锅,而是由于编码的问题,只需要将默认的数 ...