帝国cms首页随机调用所有栏目文章实现方法

发布时间:2020-03-11编辑:脚本学堂
本文介绍了帝国cms系统中在首页随机调用所有栏目文章的方法,帝国cms如何随机调用文章的例子,需要的朋友参考下。

cms/ target=_blank class=infotextkey>帝国cms在首页中随机调用所有栏目文章

复制代码 代码示例:
[e:loop={'select * from [!db.pre!]ecms_news where checked=1 order by rand() desc  limit 10',10,24,0}]
<li><a href="<?=$bqsr['titleurl']?>" target="_blank"><?=$bqr['title']?></a> </li>
[/e:loop]

上面10随机调用10条内容。

怎么实现高效的帝国cms信息随机调用?

很多人喜欢用ORDER BY RAND()随机调用,随机调用是最耗资源的一种调用方式,信息数在1万以上随机调用就开始影响速度。使用时建议慎之又慎。

可以参考如下思路:
先用php随机出信息ID,然后SQL调用用id in (php随机的ID列表)

例子:
 

复制代码 代码示例:
<?php
$randnum=10;  //随机数量
$randids='';
$randdh='';
for($i=1;$i<=$randnum;$i++)
{
   $randids.=$randdh.rand(1,100000);  //1为最小ID,100000为最大ID
   $randdh=',';
}
?>
[e:loop={栏目ID,显示条数,操作类型,只显示有标题图片,"id in ($randids)"}]
模板代码内容
[/e:loop]

使用php随机数,然后结合万能标签调用随机文章,性能上会有一个大的提升。