帝国6.0 排行榜的调用方法整理

帝国6.0 排行榜的调用方法整理

来源:帝国CMS模板网 作者:帝国CMS教程 时间:2009-11-25
浏览:9千+ 收藏 点赞(16)
简介: 首先要说明,目前排行调用实现的是:目前的排行调用方式,比较适合新闻网站,缺点是,如果本周无更新,就什么也调不出来了。例如一天没更新,后台的24小时排行常常是无内容。具体方法:问:帝

首先要说明,目前排行调用实现的是:

目前的排行调用方式,比较适合新闻网站,缺点是,如果本周无更新,就什么也调不出来了。例如一天没更新,后台的24小时排行常常是无内容。具体方法:

问:帝国是否可以实现类似本月热点排行之类的功能

前提是开启标签支持SQL语句。

SQL标签的应用

已带模版的标签为例:

[ecmsinfo]"select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 order by onclick desc limit 10",10,30,0,24,7,0[/ecmsinfo]

30 是天,当然你也可以修改为7,365,1000,自己修改合适的时间。

10 是调用多少条,自己修改为合适。

24 是SQL标签的类型,必须为24系统才会执行前面的SQL。

问:能否指定栏目调用呢?

[ecmsinfo]"select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 AND classid in('2','3') order by onclick desc limit 10",10,30,0,24,7,0[/ecmsinfo]

注意部分:可以填写你需要调用的栏目ID(注意:必须为终极类)

问:那调用当前栏目呢?这样模就更自动化了。

首先要使模版支持程序代码:

具体操作:后台—系统设置—参数设置—信息设置—模板是否支持程序代码:选择(是)

标签如下:

[ecmsinfo]"select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 and classid=$navclassid order by onclick desc limit 10",10,30,0,24,7,0[/ecmsinfo]

注意部分:

global $navclassid;,是使列表模版支持$navclassid变量($navclassid为当前栏目ID的变量)。

classid=$navclassid,条件语句,只调用栏目ID=当前栏目ID的文章。

问:我要在内容页调用当前内容页所属栏目的分时热门新闻呢?

[ecmsinfo]"select * from phome_ecms_news where newstime > UNIX_TIMESTAMP()-86400*30 and classid='".$navinfor[classid]."' order by onclick desc limit 10",10,30,0,24,7,0[/ecmsinfo]

这种方法很好,特别是对于非新闻站很有用,我认为这是真正的时间段按点击统计排行的方法,同时也能把排行细化到各栏目各时间段,不必担心无新增信息不显示。但是不会.这样的sql语句该怎么写,请能者赐教。我自己感觉可能帝国系统目前还实现不了.

帝国CMS模板网 帝国CMS模板网(www.daixiao360.cn)长期承接帝国CMS模板定制,帝国CMS仿站,帝国CMS采集规则,帝国CMS插件,帝国CMS二次开发。