twitter on 2008-10-15

  • 停掉了ShareThis插件。原因有三:很少有人用,现在的人好像更倾向于用集成类浏览器(如带GoogleToolbar的Firefox)解决收藏转阅都问题;ShareThis的服务器好像有问题,统计数据me从来就没有看到过 于 2008-10-15 08:17:27
  • 文章被阅读的次数和热度放在页首和archive中显示更符合其本身用途,可以有效指引来访者。这应该是reader friendly的! 于 2008-10-15 09:45:27
  • 貌似FeedBurner已经成功切换到Google的怀抱了,登录时自动转到了 feedburner.google.com/fb 帐号啊啥的都和以前一样使用,不过功能上没啥变化,看不出他们加盟Google后带来了什么新东西 于 2008-10-15 14:48:12
  • 欢迎thissubject朋友跟踪me的消息! 于 2008-10-15 15:43:07
  • http://zxw88263.blog.sohu.com/101823676.html 忘掉优势资源,建立营销核心优势。说着容易做着难,大家其实都很难自己革掉自己的命的。 于 2008-10-15 16:26:07
  • 糖酒会的看点在哪里? 有优秀的运作手法可以窥测吗? 战略在这种场合几乎不可见,都体现在嘴巴的闹哄哄上了。 来了,长沙…… 于 2008-10-15 16:47:06

Powered by Twitter Tools.

twitter on 2008-04-30

  • 一次更新,n次出错,看来me距离熟练工还很远哟。#
  • http://lovesun.org/read 这样的referrer很难处理,是当成机器人呢,还是当成订阅呢。其实只要有人访问该页面,它就会自动抓取所有(或者说是该页面涉及的blog的所有文章)文章。#
  • @handleft 撇子使用的啥工具?怎么鲜果推荐能自动提交到Twitter呢? #
  • 爱我所爱无怨无悔,此情,长留,心间!#

Powered by Twitter Tools.

twitter on 2008-04-29

  • 这两天有来自http://lovesun.org/read/ 的referrer不停的集中访问me的blog,以后是机器人,跑过去一看发现是网友lovesun架了一个服务器版本的feed整合工具Gregarius(http://tinyurl.com/zcqk3)。 #
  • 说它是机器人吧,agents中的数据又不同,看得出是不同的浏览器访问的。看来这个整合工具架在服务器上后还是有不少人访问的。#
  • Gregarius is a web-based RSS/RDF/ATOM feed aggregator, run on web server, allowing you to access your news sources from wherever you want. #
  • 对于装了Gregarius的聚合阅读存在几个不好理解的地方:一、me的统计工具解析出来的访问地址像这样view=1&post_id=207,但me的网址都应该是/2007/02之类的样子;二、只要有人访问聚合站点,聚合#
  • 另外cache.baidu.com的对网站的访问也是形如view=1&post_id=207的样子。真有点奇怪,难道他们都是自动识别me是用的wordpress系统的,然后用post_id读取而完全不管me的permalink设置。 #
  • 在不同项目中切换是提高工作效率的方式之一,但过于频繁则会走向反方向。 #
  • @GSeeker 谷歌真要歌唱起来,最少还要两年。属慢热型!鉴定完毕。 #
  • 风向大变,专心做事,度过难关。 #

Powered by Twitter Tools.

升级StatPress的功能(完美支持中文)

【将Statpress的升级纳入了正式的开发进程,最新进展请移步StatPressCn插件开发——WordPress插件。此文仅作历史资料参考。】

自从不经意间中对StatPress做了些小修改后,me跌跌撞撞的进入了php空间。感觉还不错,确实简单易学,也很强大。很想在学习的过程中做点什么,最后还是选择了那这个statpress开刀,以它为基础进行扩展升级。

完美支持中文的搜索关键词统计

在后台浏览统计信息发现搜索关键词有不少是乱码,能正确识别的中文字符没几个。把鼠标放上去点到来源地址去看又是好的,看来是statpress对中文不太友好导致的。到作者主页反应了这个问题,好久没有回音,看来还是自己解决算了。检查源码,发现在处理referrer时仅仅使用了urldecode函数对url进行解码,这对utf-8编码的是非常有效的,但对于中国用户常用的gb2312就不行了。

解决办法时把几个中文的搜索引擎(如baidu和google.cn等)单独判断,识别出来后用iconv转换一道。OK,测试成功。

后来发现还是有中文乱码。再查看链接,发现有不少搜索引擎在url中直接定义了语言编码如gb2312或utf-8。这也好办,增加一层判断就行了。如果指明了编码,直接根据其定义分别处理,然后才是针对me定义的中文搜索引擎进行专项处理。于是天下太平,到目前为止所有的中文搜索关键词都正常显示了。

增加对本站直接订阅feed的统计功能

订阅数量统计中,me借用两个插件实现了网站订阅的总量统计。把玩statpress的时候me发现其实它对feed的订阅情况也有统计,既然这样,干嘛多装一个插件呢。说干就干,用sql语句把feed的总数读出并做一个专门的函数输出订阅信息方便外部直接调用。这个函数调用了Feed Count对feedburner订阅的统计信息,不过如果没有安装FC也无所谓,大不了不统计罢了,statpres还可以正常运行。增加了对时间区间的限制,只取近三个月的活跃订阅。

修正了热帖(TopPost)功能

原函数仅针对permalink是默认情况下有效,对于其他格式的permalink没法产生作用。me修改后支持了形如/month/day/postname.html格式的支持。

增加了文章热度的支持

用当前页面访问量和总访问量进行除操作后得出当前文章的热度或流行度。

注:使用dreamweaver做wordpress主题感觉还是很不错的。

——————————————————————————————————

下载wp-statpress(modified by heart5)

使用:解压后上传至wp-content下的plugins子目录下即可。

注意:请勿使用插件自动更新,否则升级功能全部自动消除。

——————————————————————————————————

StatPress深度使用

【将Statpress的升级纳入了正式的开发进程,最新进展请移步StatPressCn插件开发——WordPress插件。此文仅作历史资料参考。】

WordPress博客系统的强项在于扩展应用多多,当然是通过插件实现的。想给“天高云淡”添加一个访问统计方面的插件,发现最流行的是WordPress.com Stats,可惜它好像只对一级域名有效,只好放弃。仔细查阅了WordPress的插件列表,统计类好像分为另类:引用第三方统计服务的,比如把把Google Analytics和Feedburner统计结果拿过来在管理后台显示的Google Analytics and Feedburner Reports plugin for WordPress;还有直接在服务器上统计数据并分析的,比如刚提到的WordPress.com Stats和本文重点研究的StatPress

安装了StatPress后觉得还不错,功能简单实用,统计结果显示也很直观。这几天每天上去看看统计结果,总算对访问情况有了基本的了解(原来一直用Google Analytics,说实话,很复杂;并且不是给blog系统定制的,不直观),但有两个小问题一直让me觉得美中不足:

  1. 在Last Referrers页面中有不少百度的链接,而Google的是直接出现在Last Search Terms页面中,看来是StatPress不能正确识别我们中文用户常用的搜索引擎——百度;
  2. 安装默认是Do not collect spiders visits,但用了两天me觉得那个那个spider对统计分析没啥意义,就在Options中把它取消了。这下好,它是老老实实的不统计spider信息了,但Overview中那个柱形比例图就很难看了:刚安装那两天因为统计了spider,柱子高高的,后来取消后的日期柱子就很矮(唉,主要还是怪浏览量有限,spider的访问居然超过了用户),中间各分类(Visitors、PageViews、Spiders、Feeds)的情况根本看不清楚。

问题虽然不大,但天天面对也挺烦的,更何况me对细节有那么在意,还是想想办法搞定它吧。

把StatPress的插件压缩包打开,里面有两个目录:def和locale。在def下共有四个数据文件,分别是banips.dat、browser.dat、os.dat、searchengines.dat。用EmEditor打开这些dat文件,发现都是基本的文本,中间定义了各种规则。其中searchengines.dat的文本片断如下:

Alice|search.alice.it|qs|
Google|www.google.|q|
Google Groups|groups.google.|q|
Google Images|images.google.|q|
Yahoo|search.yahoo.com|p|
Virgilio|search.virgilio.it|qs|
Arianna|arianna.libero.it|query|
Altavista|.altavista.com|q|

规则很简单,每行定义一个规则,分为三个部分:搜索引擎名称、域名、搜索词标识。me把所有的访问记录通过Export功能导出为csv格式,用Excel打开,通过Excel的分列功能做成数据表,筛选出referrers,发现有百度、yahoo和Google的blogsearch不能被识别。在searchengines.dat添加如下规则:

Google Blog|blogsearch.google.|q|
Yahoo|search.yahoo.com|p|
Yahoo cn|www.yahoo.cn|p|
Baidu|www.baidu.com|bs|
Baidu|www.baidu.com|word|
Baidu|www.baidu.com|wd|

上传至服务器。进入StatPress界面点StatPressUpgrade按钮,OK。再返回统计页面,呵呵,很好,StatPress已经能正确识别百度等中文用户常用的搜索引擎了,第一个问题算是基本解决。但可惜搜索的关键词中的中文好像不能被正确识别,都显示为问号(?),留待下步探究。

第二个问题的解决思路其实很简单,就是把已经统计的spider信息删除就行了,但因为原来从来没有在服务器上操作过php和mysql,虽然心里有底,还是要充分准备的,搞不好把博客系统破坏了就麻烦大了。

打开statpress.php文件,有九百多行代码。大约浏览了下,它创建了一个statpress数据表来记录访问信息,然后就是各种功能板块的实现代码。仔细查阅后,me决定在iriStatPressExport函数中加入代码删除包含有spider的数据记录。代码如下:

        print "Detele the Spider, start:";
	$qry = $wpdb->query("DELETE FROM $table_name WHERE spider != ''");
	if($qry == 0){
		print "Detele the Spider, DONE.";
	}
	else if($qry === FALSE){
		print "Error occurred when deleting the record with spider content.";
	}else{
		print "".$qry." records with spider content is deleted.";
	}

上传至服务器,执行了一次导出数据(Export),打开生成的csv文件,末尾处显示Detele the Spider, start;752 records with spider content is deleted.呵呵,总共删除了752条记录,成功。再次登陆统计界面,柱子已经很均匀了,也很直观。这第二个问题也基本搞定

美中不足的是me发现feeds数据好像少了些。打开第一次导出的csv数据,发现居然还有部分记录是在spider和rss中都有数据,统计了下共有五十条记录,晕,看来me误杀了这部分记录,想恢复是不可能的了,只好作为经验教训了:下次对数据库操作时一定要彻底弄清楚数据库的结构