帝国CMS模板中的多条件筛选方法

需求:点击某一条目,调出与该条目关键词相关的类似词条数据

要点:

1.帝国CMS灵动标签使用   [e:loop=

2.专题关键词筛选  enewszt 

3.SQL语句筛选   select * from [!db.pre!]enewszt where zcid='$zr[zcid]' and ztpagekey like '%下载%

4.随机排序  order by rand()

5.PHP 判断字符串存在  strpos($title,'下载') !== false

复制代码
 1   <ul>
 2 <?php
 3 if(strpos($title,'下载') !== false)
 4 {?>
 5  [e:loop={"select * from [!db.pre!]enewszt where zcid='$zr[zcid]' and ztpagekey like '%下载%' order by rand() limit 20",0,24,0}]<li><a href="/<?=$bqr[ztpath]?>/" target="_blank" title="<?=$bqr[ztname]?>"><u><?=$bqr[ztname]?></u></a></li>[/e:loop]
 6 <?php 
 7 }else if(strpos($title,'软件') !== false){?>
 8 [e:loop={"select * from [!db.pre!]enewszt where zcid='$zr[zcid]' and ztpagekey like '%件%' or ztpagekey like '%器%' order by rand() limit 20",0,24,0}]<li><a href="/<?=$bqr[ztpath]?>/" target="_blank" title="<?=$bqr[ztname]?>"><u><?=$bqr[ztname]?></u></a></li>[/e:loop]
 9 <?php }
10 else if(strpos($title,'仓库') !== false){?>
11 [e:loop={"select * from [!db.pre!]enewszt where zcid='$zr[zcid]' and ztpagekey like '%管理%' or ztpagekey like '%仓库%' or ztpagekey like '%系统%'  order by rand() limit 20",0,24,0}]<li><a href="/<?=$bqr[ztpath]?>/" target="_blank" title="<?=$bqr[ztname]?>"><u><?=$bqr[ztname]?></u></a></li>[/e:loop]
12 <?php }
13 else if(strpos($title,'器') !== false){?>
14 [e:loop={"select * from [!db.pre!]enewszt where zcid='$zr[zcid]' and ztpagekey like '%软%' or ztpagekey like '%器%' or ztpagekey like '%下载%' or ztpagekey like '%音乐%' order by rand() limit 20",0,24,0}]<li><a href="/<?=$bqr[ztpath]?>/" target="_blank" title="<?=$bqr[ztname]?>"><u><?=$bqr[ztname]?></u></a></li>[/e:loop]
15 <?php }
16 else if(strpos($title,'大全') !== false){?>
17 [e:loop={"select * from [!db.pre!]enewszt where zcid='$zr[zcid]' and ztpagekey like '%全%' or ztpagekey like '%器%' or ztpagekey like '%系统%' or ztpagekey like '%软件%' order by rand() limit 20",0,24,0}]<li><a href="/<?=$bqr[ztpath]?>/" target="_blank" title="<?=$bqr[ztname]?>"><u><?=$bqr[ztname]?></u></a></li>[/e:loop]
18 <?php }else{?>
19 [e:loop={"select * from [!db.pre!]enewszt where zcid='$zr[zcid]' order by rand() limit 20",0,24,0}]<li><a href="/<?=$bqr[ztpath]?>/" target="_blank" title="<?=$bqr[ztname]?>"><u><?=$bqr[ztname]?></u></a></li>[/e:loop]
20 <?php }?>
21        </ul>
复制代码

说明:当点击下载器;第5行会将带“下载”字符串的数据调出;同时,因为带“器”,第14行会将带“软”、“器”、“下载”、“音乐”的数据调出......

 

posted @   coderjim  阅读(1846)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现

更多知识请点击——

www.7017online.xyz
点击右上角即可分享
微信分享提示