帝国CMS年榜、月榜、周榜、日榜排序的实现方法

2025-01-15 帝国CMS 37 0

要实现排行榜,基本逻辑是现在的时间减去以前的时间,然后其中的时间段就是我们所需要的排序时间,代码如下:

年榜的实现方法:

[e:loop={"select * from phome_ecms_news where  newstime>UNIX_TIMESTAMP()-86400*365 order by onclick desc limit 10",10,24,0}]
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=$bqr[title]?></a><br>
[/e:loop]

月榜的实现方法:

[e:loop={"select * from phome_ecms_news where  newstime>UNIX_TIMESTAMP()-86400*30 order by onclick desc limit 10",10,24,0}]
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=$bqr[title]?></a><br>
[/e:loop]

周榜的实现方法:

[e:loop={"select * from phome_ecms_news where  newstime>UNIX_TIMESTAMP()-86400*7 order by onclick desc limit 10",10,24,0}]
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=$bqr[title]?></a><br>
[/e:loop]

日榜的实现方法:

[e:loop={"select * from phome_ecms_news where  newstime>UNIX_TIMESTAMP()-86400*1 order by onclick desc limit 10",10,24,0}]
<a href="<?=$bqsr[titleurl]?>" target="_blank"><?=$bqr[title]?></a><br>
[/e:loop]

代码解析:
以年榜为例来解析,其中的关键代码是“newstime>UNIX_TIMESTAMP()-86400*365 ”,这一句表示时间要大于当前时间减去一年前的时间,结果就表示过去一年的时间,有点绕口,大家只需记住UNIX_TIMESTAMP()-86400*365,这个365表示一年365天,那么,月这个数字改成30就可以了,周改成7,日改成1,然后可以按照点击进行排序,这样就实现了相应的榜单排名。

最后更新于 2025-01-15 10:49:41
ECMS 帝国CMS

相关文章

帝国CMS模板里面灵动标签怎么调用日期时间
帝国CMS模板中显示标题颜色的标题灵动标签调用
帝国cms灵动标签同时调用头条和推荐
帝国CMS,灵动标签结合PHP代码获取当前栏...
帝国CMS调用某一栏目,指定时间内的所有信息
帝国CMS创建网站地图Sitemap.xml文件