StatPressCN,1.6.9.6版本

下载升级:

  • 请到wordpress官方插件网址下载最新版本,ftp到服务器上去;
  • 或者,如果您的wordpress是2.7版本以上的,那就耐心等段时间(大约几个小时吧),管理后台会自动提示升级的;
  • 提示:升级至本版本不会影响数据库中的数据记录。

功能开发:

  1. 和wp-comments数据库联动,自动过滤掉垃圾留言者的访问记录;这样“朋友来访”显示的朋友访问列表就更精准了
  2. 修正了widget中可用参数不准确的问题,主要涉及今日来访数量、昨日来访数量、今日页面访问数量、昨日页面访问数量;
  3. “朋友来访”中显示的数量增加了50的选项卡,现在可以设定为5、10、20或50个了。

def规则:

  1. 增加了yahoo日本、cnnic的搜索引擎规则;
  2. 增加了Ginxbot、FairShare、Congentbot爬虫规则的识别。

代码改进:

  1. 在“支持”的调试信息中增加了时区和utc时间、本地时间内容显示;
  2. 在“支持”函数体中共享global $wpdb;
  3. 增加了对博客网址的识别,对me的天高云淡不再显示iframe框架调用;
  4. 动态识别blog网址(通过get_option(‘home’)函数;
  5. 修正widget中可调用参数的时间识别。

升级需做:

  • 升级至1.6.9.6版本后,请进入“系统更新”,选项卡一个都不要选,运行一次“更新统计系统和数据记录”,这样会清理掉那些垃圾留言者的访问记录。

开发笔记

听了dust2k朋友的建议后开始认真考虑过滤掉垃圾留言者。原来曾经尝试过,对akismet的运作机制不甚了了,也就作罢了。这次重新启动,一定要搞定。仔细研读了akisme的代码,它主要是针对comments进行相关处置的,并且是借助了集中存放规则的网络服务器进行的,每次判断都会提交到查询服务器上去(这种机制其实是最高效的,sharethis就是这样升级的,可惜me没有服务器资源,只好在每个版本中自带dat文件进行规则更新)。打开wordpress的默认数据库comments看了下,记录了每条留言的id、ip、agent、内容、留言者等等,其中有一项是是否验证通过。仔细考虑了下,其实基本不关akismet的事情。在StatPressCN记录ip之前,看看是否是comments表中被标记为spam就行了。

昨日访问和今日访问数据不对,刚开始以为差一天,后来发现差了是几个小时。上午测试发现不仅仅是8个小时,而是16个小时,看来问题出在时区。简单的查阅了mysql的时间函数后就更改了代码,结果和php的gmdate不太一样。关键还是时区问题。经过仔细测试,发现还是utc时间好用。机制大约这样:查找blog option中的时区设定,再结合utc时间进行处理,就能得到当地时间。但是用sql语句得到时间效率高还是php本身的时间函数效率高就不清楚了,以后有时间再测试下。

作者: heart5

生命如歌,我自徜徉。

发表评论

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

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据