分类分类
大小:26 KB更新:2010/09/08
类别:phpcms插件系统:Linux/2003/PHP
一、Digg插件简介:
Digg是WEB 2.0概念下的一种新的互动模式,可以由网友自己票选出大家最关注的新闻、话题。去年年底phoenixtv.com凤凰网启用了该功能,现在163.com的大批门户网站也开始使用该功能。类似的,也有了“掘客”、“掘世新闻”等概念。
本插件的制作中,尽最大可能实现了在PHPCMS中跨模块、跨频道实现Digg功能整合,可以列出24小时和7日内的Digg榜;没有改变既有数据表的存储结构,从而避免了使用该插件在将来可能会造成的升级问题。
二、运行环境:
1、首先保证phpcms2007sp4(gbk)版本能够正常运行
2、linux/unix主机还需要设置相关路径的访问权限
三、安装说明:
1、首先备份你的phpcms中的以下文件:
templates/default/article/content.html
templates/default/download/content.html
templates/default/picture/content.html
templates/default/movie/content.html
templates/default/phpcms/header.html
templates/default/movie/header.html
templates/default/skin/default/style.css
2、将解压缩后的文件覆盖系统中原来的相应文件。即将该目录下的除了本文件之外的所有文件和目录上传到你的phpcms安装路径。共有以下几个文件:
digg.php: 主程序文件
include/js/digg.js: ajax实现顶一下的js文件
templates/default/article/content.html
templates/default/download/content.html
templates/default/picture/content.html
templates/default/movie/content.html
templates/default/phpcms/header.html
templates/default/movie/header.html
templates/default/skin/default/style.css
templates/default/skin/default/images/digg.gif
templates/default/skin/default/images/digg2.gif
templates/default/skin/default/images/diggpoint.gif
在此特别提醒你,如果你曾经修改过模板,一定不要轻易覆盖这些模板文件!在后面的第五部分中有专门写明,怎样修改模板。因此,如果想添加到你自己已经修改过的模板中,请参考本程序包中给出的模板文件和下面的说明,自行修改。
3、执行SQL语句:
注意上面的表前缀"phpcms_"改成你实际的数据表的前缀。默认应该是"phpcms_"。如果不清楚,请查看config.inc.php中的
可以使用phpcms的数据维护中的SQL执行,或者使用phpmyadmin执行这段SQL语句。
到此,此插件就安装好了。现在的任务就是更新所有已经生成的静态页面,从而在所有内容页面中出现“顶一下”的标记。
四、使用说明:
1、现在,文章、图片、下载、影视四类模块所在的频道的内容都应当出现了“顶一下”的部分。上面显示的数字是最近n天内用户“顶”的数量。n在digg.php中的$diggcfg['delete']定义。
2、点击“顶一下”,则上面的数量会增加1。如果该用户所在IP此前已经“顶”过该内容页面,则提示“已经顶过”。如果出现其他异常错误,则提示“暂时不能顶”。如果出现该情况,请及时反馈,以便我查找原因。
3、点击完成后,“顶一下”变成“查看”,点“查看”则可以查看全站Digg榜。所有文章、图片、下载、影视频道的“前10顶”会在这里列出。
五、补充说明:
1、为了方便用户使用,digg.php还特别设置了URL参数。例如:
(1)如果只列出所有使用文章模块的频道,可以使用digg.php?module=article。这样,如果你有两个文章模块的频道,则列出该两个频道的“前10顶”。图片=picture;下载=download;影视=movie
(2)如果只列出某单个频道的数据,可以使用digg.php?channelid=n。n是该频道的id。你可以在频道管理的地方查到这个id。
2、digg.php的前面还有一些变量可以自由修改。
根据网站用户群的不同,不同的网站每天访客的数量不同,大家“顶”的数量也会不同。由于每一顶都会存入数据库,因此,如果“顶”的太多也会造成数据库的负担。特别是digg.php列出的“前10顶”的榜单,由于是跨频道设计,因此数据库查询非常大,极其消耗资源。因此,有以下的变量可以进行设置。
$diggcfg['delete'] = '8'; //digg数据存储的最长时间,默认设置8天。该时间戳以前的digg数据将被删除
$diggcfg['refresh'] = '600'; //digg页面的数据更新时间,默认为10分钟,即600秒。该时间以内读取缓存文件,该时间以外重新查询数据库并重新建立缓存
现在程序中显示的是最近24小时和最近一周的“前10顶”。因此,$diggcfg['delete']的数量应大于7。如果你的网站“顶”得太多,数据库就会占据很大空间。不妨考虑减少这个值,相应的,重新设置第二个榜单的有效期。
为了减少数据库的查询,使用了缓存技术。$diggcfg['refresh']就是设置的缓存有效期。如果已经存在一个缓存在有效期内,那么就读取该缓存数据。否则,重新查询数据库,重新建立缓存。所以,您在digg.php看到的榜单可能会就是9分59秒之前的榜单。
此外$diggcfg['title'] = "Digg榜"; 可以设置页面的名称。
3、如果你的某个频道不希望参加“顶一下”的功能,那么就不要修改该频道的模板。保持原模板就好。
4、如果你曾经修改过模板和样式文件,那么只需要在相应的模板添加这些代码。
(1)header.html,位于templates/模板名/phpcms/header.html和templates/模板名/movie/header.html(天知道为什么影视频道会自己单独使用header)
(添加到</head>前面)
(2)content.html,位于templates/模板名/aritcle或picture或movie或download/content.html
(添加到你喜欢的地方,其他频道分别相应将上面的4处$articleid的改成$downid $pictureid $movieid,如果不明白请参考程序包中给出的模板,进行对比。)
(3)style.css,位于templates/模板名/skin/风格名/style.css
(添加到最后即可)
六、其他
1、本插件由蚂蚁呱呱叫制作。开放源码,允许大家修改加工和传播,但是应当注明作者中有蚂蚁呱呱叫。
2、由本插件产生的一切法律纠纷或者财产损失等,蚂蚁呱呱叫概不负责。你应当提前做好必要的准备。
3、鸣谢 淡淡风、年华、phpip、jackiedong
4、本插件的技术支持,请在bbs.phpcms.cn官方论坛讨论。或者和我联系
(1)邮件:web at xingbin.net
(2)留言:www.xingbin.net,www.xingbin.name,留言板
蚂蚁呱呱叫保留修改此插件和使用说明而不事前通知你的权利。