帝国cms6.0 排行榜的调用方法整理
首先要说明,目前排行调用实现的是:
目前的排行调用方式,比较适合新闻网站,缺点是,如果本周无更新,就什么也调不出来了。例如一天没更新,后台的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语句该怎么写,请能者赐教。我自己感觉可能帝国系统目前还实现不了.
- 上一篇
关于utf-8下中文tags搜索不到的问题
看了很多帖子才知道,原来UTF-8编码下中文tags搜索不到是因为编码的缘故,前辈提出要对字符进行转换,但应该对userfun.php 做怎样的修改呢,请知道的前辈能详细说清楚吧,别再有一句没一句的让我们这些初学者摸不着头脑了
- 下一篇
帝国cms内容页标题分页的解决方法
同一篇文章,如果分了几页,标题要做出下面这样的效果标题标题(1/2)标题(1/3)注:本方法只在6.0下测试成功,其它版本没测试过!找到e/class/functions.php 文件再找到 2178行 $string=str_replace('[!--title.select-