Daily Archives: 2011年8月19日

1 post

Bo-blog反垃圾评论 – Akismet

我朋友毛样天同志用的boblog,表示垃圾评论很多,审核压力很大。而我自己用wordpress,akismet是必用的插件,通过网址/昵称/邮件来对评论进行审核,判别率很高。所以自己尽力把国外的一个akismet php5 class调用到mod_visit中,实现akismet对评论的判别。

*本文由本人始发于bo-blog论坛,现转至个人博客上。从2010年10月到现在,经过永世的缘Bruce两位朋友将近一年的倾情测试,已经证明此插件的有效性和稳定性,故在此放出,方便更多的朋友

适用版本&版权声明

  • PHP版本:PHP5以上
  • bo-blog适用版本:Boblog2.1.1正式版,打了2.1.1_patch20100905补丁的可以支持
  • 使用了Alex Potsides 编写的Akismet php5 class,版权归Alex Potsides所有
  • 本人测试有效,在本人理解范围内无任何有害代码及漏洞,有能力的朋友可自行下载代码研究,所添加代码为184~527行,出现数据丢失等情况本人/及代码贡献者无主观故意,亦不负任何责任
  • 本人没有找到boblog预留对评论/留言属性(reproperty)的钩子,暂时无法作为插件发布
  • 请反馈测试信息,如若反馈良好,我会尽力改进

安装步骤

  1. 到boblog的inc目录下备份一下mod_visit.php文件,重命名为其它名称(例:mod_visit.phpbak),或者复制到本地(此步骤请务必进行
  2. mod_visit下载附件,解压后得到一个mod_visit.php,把在akismet申请得到的key填入514行,blog的网址填入515行
  3. 上传附件到boblog的inc目录下,测试能正常留言即可

常见问题

  • 安装这个之后我的博客没法正常评论/留言了,留言的时候弹出一个对话框,显示空白信息/显示一串错误代码,怎么办?
    这个问题很有可能是因为您使用了国内的空间,无法链接akismet服务器造成。如果出现这种情况,请暂时把原来的mod_visit.php恢复回去,如果可能,尽量贴出错误代码信息,方便我们改进
  • 为什么不能做成插件形式
    本人是100%的php新手,甚至连php类的构建都不会,不过我很愿意为大家做一些事情,所以做了一个这个初级东西。我看了boblog的插件开发指南,目前的版本中没有预留对评论属性(reproperty)处理的钩子,所以暂无做成插件形式的思路,欢迎各位高手指正/探讨

更多说明

  • 你改动了哪些代码,会不会对我现有数据有害?
    改动的代码都有注释,请搜索“开始”和“结束”字符串;主要源代码由Alex Potsides编写,各位高手可检查,网址为:PHP5 Akismet,里边有详细的说明及开发指南,*可能需要爬墙访问
  • 此版本功能说明
    此版本仅修改mod_visit.php一个文件,没有改动后台的评论及留言管理文件(应该是admin目录下的cp_reply.php和 cp_message.php),仅实现评论判定过程,不对akismet做”垃圾判定/误判”提交,日后版本酌情考虑添加

版本更新

  1. 2010-10-28:第一版本发布,仅实现最基本的调用akismet服务器判定功能,不向akismet提交任何入库信息(在本博客上判定为垃圾评论、误判等信息不反馈到akismet)