用灵动标签如何调用最新,且排除头条、推荐、置顶信息?以及如何排除当前栏目信息
内容纲要
网上找到的简单高效方法:帝国CMS灵动标签排除头条、推荐、置顶
istop=0 排除置顶 信息
isgood=0 排除推荐 信息
firsttitle=0 排除头条 信息
灵动标签简化版写法
sql附加条件 ‘istop=0 and isgood=0 and firsttitle=0’
具体使用sql附加条件/使用e:loop+SQL调用代码
以下取得栏目ID代码使帝国CMS模板制作中常用到的代码,本文灵动标签调用最新且排除头条与推荐方法中将使用到。
<?php //$bclassid=$class_r[$GLOBALS[navclassid]][bclassid]; //取得当前栏目的父栏目id,即bclassid $classid=$GLOBALS[navclassid]; //取得当前栏目id ?>
(1)sql附加条件:以下代码获取最新文章,排除了推荐、头条、置顶,并且排除了本栏目最新文章
[e:loop={news,8,3,0,"istop=0 and isgood=0 and firsttitle=0 and classid!=$classid","newstime desc"}] <li> <a href="<?=$bqsr[titleurl]?>"><?=$bqr[title]?></a> </li> [/e:loop]
(2)e:loop配合SQL直接调用数据:以下代码实现上一方法同等功能
[e:loop={“select * from `[!db.pre!]ecms_news` where istop=0 and isgood=0 and firsttitle=0 and classid!=$classid order by newstime desc limit 8"}] <li> <a href="<?=$bqsr[titleurl]?>"><?=$bqr[title]?></a> </li> [/e:loop]
这里省略了e:loop后面几个参数,sql预计直接限制循环条数为8 (limit 8),如果不省略后面几个参数,可以这么写:
[e:loop={“select * from `[!db.pre!]ecms_news` where istop=0 and isgood=0 and firsttitle=0 and classid!=$classid order by newstime desc",8,24,0}]
其中第三个参数“24”表示e:loop操作类型为SQL预计,第四个参数“0”表示不限制是否有标题图片。
以上是帝国CMS 灵动标签排除头条、推荐、置顶等信息调用的方法,文中代码为devin实战代码,其中还排除了当前栏目的记录信息。