很多用帝国CMS做站的朋友,是不是都遇到过这个需求?首页或者自定义列表页调用内容的时候,就是不想把某个特定栏目的文章放出来,对不对?我刚用帝国那会,为这个事儿搜了大半天教程,踩了好几个坑才搞明白。说白了就是一层窗户纸,捅破了你也会说一句“原来这么简单”。
灵动标签是我们做主题开发最常用的调用方式了吧?核心就是在SQL条件那里加一句判断就行,我直接给你放可复用的代码,改改ID就能用。
``` [e:loop={0,10,30,0,'classid not in (2,3)',''}]这里核心就是这句`classid not in (你要排除的栏目ID)`,要排除多个栏目,就把多个ID用逗号隔开放在括号里就行。是不是超简单?我之前还绕大弯去装插件,原来加一句条件就搞定了。

如果你用的是帝国官方自带的内容调用标签,格式更简单,直接在参数里加排除标识就行,给你们举个实际例子:
``` [phomenews] tableid=0 num=10 classid=!2,!3 order=newstime DESC [/phomenews] ```这里有个很容易踩的小坑,多个栏目排除的时候,每个ID前面都要加感叹号,别只给第一个加,漏了的话直接不生效,我第一次调的时候就犯了这个错,愣是折腾半小时才发现问题出在这。
其实帝国本身的灵活性真的够,大部分需求只要改改参数加个条件就能实现,网上不少教程写得云里雾绕,故意把简单事儿说复杂。今天给的这俩方法都是我做站这么多年一直用的,拿来就能用,绝对不会出问题。
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图