好的爱情是你通过一个人看到整个世界,坏的爱情是你为了一个人舍弃世界。

给WordPress添加聚合功能

技术文档 6968浏览 0评论

一直想给小站添加一个聚合的功能,将经常访问的几个技术blog和一些好友的博客汇聚一下,能比较方便的查看。

Google了一下,发现已经有了一些推荐的插件,试了一下,功能貌似不是太强大就是太简单,不是很符合我的要求。没办法,只好采取了一个笨办法,将官方网站上关于RSS的插件都看了一遍,找到了RSSImport,还比较满意。它采用WordPress系统自带的SimplePieMagpieRSS来获取别的网站的内容。但比较遗憾的是它只能获取一个rss地址的内容,又不符合我的要求。Denis同学曾经写过一个插件,但貌似有一些问题,而且与新的版本也不是很兼容。于是乎,只好自己动手了。

原理基于Denis写的插件,通过SimplePie每次依次获取feed列表中两个地址的信息,每隔一个小时通过WP_Cron功能更新一次。将获取到的一些信息存入数据库,以供调用。这样做至少有两个好处:

1、每次获取较少源地址的信息,依次获取获取feed列表中的所有地址的信息,这样可以避免一次获取所有地址的信息给系统带来巨大的资源消耗。在实际测试中,一次获取太多源地址的信息,经常陷入超时状态,而每次只获取两个源地址的信息则是完全可以承受的。

2、将内容写入数据库,同时配合数据库缓存插件DB Cache Reloaded,对内容进行缓存,可以获得较高的性能。所以没有采用SimplePie自带的缓存功能,而RSSImport则是采用自带的缓存功能。

效果参见:http://www.loosky.net/?page_id=887

转载请注明:自由的风 » 给WordPress添加聚合功能

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (2)

  1. 这个还有用吗? 希望博主分享一下你的源码.嘿嘿 :lol:

    iSayme2011-07-15 11:20 回复