帝国CMS比较高效的随机信息调用方法

有时,我们希望调用随机的信息。

可以在生成标签的时候,标签参数中的排序参数用:’rand()’。引号不用。

比如:

[ecmsinfo]2,10,32,0,0,2,0,”,’rand()’[/ecmsinfo]

但如果信息量很大的时候,比如上万后。严重影响生成速度。不建意使用。

如果确实要使用,可以用下面思路:

先用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]

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注