除了车东昨天指出的中文WordPress RSS Feed时间码不符合标准的问题外,今天一不小心又发现了Wordpress的RSS feed时间码上的又一个bug,问题也是出自本地化(localization)上:RSS中的blog贴的时间不会自动根据用户设定的时区进行调整。

最初发现问题是由于我的rss经过feedburner烧烤之后,添加了我的del.icio.us的每日书签,但却发现我写的blog与美味书签链接在feed中的顺序颠倒了,而后恰好从车东那个帖子的更新内容中读到:

blogbus的RSS时间字段没有标记时区,+0800 因此发布后,缺省会认为是格林威治时间。导致比实际发布时间快8个小时:明明是当天早上8点发表的,显示发布时间却是未来:下午4点(16点)

于是检查我的feed,发现时区那里居然标记的是+0000,也就是默认的格林威治时间,很明显问题就出在这里,而我清楚地记得我已经在WordPress的管理后台将时区设定成了东八区的北京时间,也就是+0800。今天再到wordpress的网站上去确认了我对后台时区设定功能的理解没有错误,从网站上blog发表时间无误上看,我也相信我的设置是正确的。那么问题只能是出在RSS Feed没有自动读取用户设定的时区上,显然是WordPress的一个bug,又用rss 阅读器查看几个用Wordpress建的blog,发现了同样的问题。

手工修正这个问题其实很简单,用编辑软件打开wp-rss2.php,将+0000替换成+8000+0800,应该就可以解决,从我的feed上看已经正常了。

WordPress目前俨然已经成为继MT之后,又一个很受用户欢迎的blogware,根据WP的blog,下载的数量已经超过10万,但从我很短的WP使用经历来看,似乎blog圈对WordPress有点过誉了,WordPress还存在不少明显的小bug,虽然它有自己很多明显的优点,但在一些重要的细节问题的开发上考虑欠周至少说明它离成熟还有一段不短的距离。也希望WordPress的主要开发者Matt先不要想着如何用一些小技巧来获取更多的收入,更重要的是先将WordPress开发成真正受到大量blogger欢迎和使用的软件,到那时相信WP也能够找到自己的商业模式。