需求描述:

  1.将专题列表下的列表单元,自动根据专题页标题或者页面关键词来匹配展示;

  2.第一个精确匹配,后面十一个模糊匹配,总数12个;

正文模板中,引入部分为:

[!--empirenews.listtemp--]<!--list.var2-->[!--empirenews.listtemp--]

    <ul class="clearfix mainCont">

    [!--empirenews.listtemp--]<!--list.var2-->[!--empirenews.listtemp--]

    </ul>

此部分,当前为推送才能获取列表参数,所以改为自动获取时,使用灵动标签;

步骤:

  1.删除[!--empirenews.listtemp--]<!--list.var2-->[!--empirenews.listtemp--]引用模块,

  2.将list.var模块中,$listtemp后面引号包裹部分html复制到内容模板原来引入模块删除的位置;

  3.添加灵动标签[e:loop={}]包裹加入的html部分,

  4.找到对应的数据表(此处我需要找的是下载表,即[!db.pre!]ecms_download),

  5.找到当前专题模板页顶所查询的数据表(enewszt)的专题变量$zr

  6.将要查询表中的标题(title)或关键词(keyboard)匹配当前页面的页面关键词(ztpagekey,前面加上查询变量$zr,使用%包裹,表示模糊查询),限制为11(因为第一条要精确匹配);

    <ul class="clearfix mainCont">

[e:loop={"select * from [!db.pre!]ecms_download where title like '%$zr[ztpagekey]%' or keyboard like '%$zr[ztpagekey]%' limit 11",0,24,0}]
<li><p>< a href="<?=$bqr[titleurl]?>" class="img" preview="'.<?=$bqr[titlepic]?>.'"><img src="'.<?=$bqr[titlepic]?>.'"></ a><i>< a href="<?=$bqr[titleurl]?>"><strong><?=$bqr[title]?></strong></ a><span class="xj lstar<?=$bqr[star]?>">等级:</span><span class="bb"><?=$bqr[softsq]?></span><span class="time"><?=$bqr[newstime]?></span><span class="size"><?=$bqr[filesize]?></span><span class="lan"><?=$bqr[language]?></span></i><s><a rel="nofollow" href="<?=$bqr[titleurl]?>" target="_blank">下载</ a></s><em><font>内容导读:</font><strong><?=$bqr[smalltext]?></strong></em><span class="platform"><font></font></span> </p></li>
[/e:loop] </ul>

  7.再复制该[e:loop={}]语句,置于第六条[e:loop={}]语句之上,进行精确查询;

    <ul class="clearfix mainCont">

[e:loop={"select * from [!db.pre!]ecms_download where  title regexp '(^|,)$title($|,)'",0,24,0}]
<li><p>< a href="<?=$bqr[titleurl]?>" class="img" preview="'.<?=$bqr[titlepic]?>.'"><img src="'.<?=$bqr[titlepic]?>.'"></ a><i>< a href="<?=$bqr[titleurl]?>"><strong><?=$bqr[title]?></strong></ a><span class="xj lstar<?=$bqr[star]?>">等级:</span><span class="bb"><?=$bqr[softsq]?></span><span class="time"><?=$bqr[newstime]?></span><span class="size"><?=$bqr[filesize]?></span><span class="lan"><?=$bqr[language]?></span></i><s><a rel="nofollow" href="<?=$bqr[titleurl]?>" target="_blank">下载</ a></s><em><font>内容导读:</font><strong><?=$bqr[smalltext]?></strong></em><span class="platform"><font></font></span> </p></li>
[/e:loop] [e:loop={"select * from [!db.pre!]ecms_download where title like '%$zr[ztpagekey]%' or keyboard like '%$zr[ztpagekey]%' limit 11",0,24,0}]
<li><p>< a href="<?=$bqr[titleurl]?>" class="img" preview="'.<?=$bqr[titlepic]?>.'"><img src="'.<?=$bqr[titlepic]?>.'"></ a><i>< a href="<?=$bqr[titleurl]?>"><strong><?=$bqr[title]?></strong></ a><span class="xj lstar<?=$bqr[star]?>">等级:</span><span class="bb"><?=$bqr[softsq]?></span><span class="time"><?=$bqr[newstime]?></span><span class="size"><?=$bqr[filesize]?></span><span class="lan"><?=$bqr[language]?></span></i><s><a rel="nofollow" href="<?=$bqr[titleurl]?>" target="_blank">下载</ a></s><em><font>内容导读:</font><strong><?=$bqr[smalltext]?></strong></em><span class="platform"><font></font></span> </p></li>
[/e:loop] </ul>

注意:

精确查找SQL使用——where title regexp '(^|,)匹配参数($|,)'

模糊查找SQL使用——title like '%匹配参数%'

参考文章:

https://blog.csdn.net/abc2575/article/details/82659721

帝国CMS 列表内容模板[!--empirenews.listtemp--]改写为灵动标签[e:loop={}]的更多相关文章

  1. 帝国cms列表内容模板加上数字编号

    /*这个[!--no.num--]指的是信息编号.每次增加1*/ <li data-eq="[!--no.num--]"> <div class="ti ...

  2. 帝国cms列表页内容简介字段smalltext去除里面html格式代码 设置方法

    帝国cms列表页内容简介字段smalltext去除里面html格式代码帝国cms列表页调用内容简介出现html代码怎么办 近来在用帝国cms的时候,发现一个问题,在列表页调用产品简介的时候出现了这种h ...

  3. 帝国cms 列表页分页样式修改美化【2】

    上一篇(帝国cms 列表页分页样式修改美化[1])中我们已经对分页说了一个大概,下面我们就自己动手弄一个分页把: 第一步:进入帝国cms后台,点击系统设置->系统参数设置->信息设置:里面 ...

  4. 帝国cms刷新内容页提示.phome_ecms_news_data_' doesn't exist

    帝国cms后台刷新提示.phome_ecms_news_data_' doesn't exist解决方法: 刷新所有信息内容页面时提示“Table '*.phome_ecms_article_data ...

  5. 帝国CMS 列表模板list.var支持程序代码

    1.增加模板时list.var模板需要勾选“使用程序代码”选项.如图: 2.直接添加PHP代码,不需要加<?和?>程序开始和结束标记. 3.字段值数组变量为$r,对应的字段变量为$r[字段 ...

  6. 帝国cms 列表页分页样式修改美化【1】

    [1]自己修改帝国cms默认的分页样式(css),这样做的好处是你不用去改动帝国的核心文件,方便以后升级. [2]自己动手去修改帝国的分页(php+css),帝国的分页在e>class>下 ...

  7. 帝国cms文章内容tags关键词设置调用方法以及tags静态化

    说实话帝国cms用起来真的不好找一些功能,就比如说帝国cms的tag标签调用.需要注意的是帝国CMS文章的关键词和tags标签并非一码事,关键词标签是设置文章的关键词的,是用来给搜索引擎说明本篇文章的 ...

  8. 帝国cms中 内容分页的SEO优化

    关于内容页如果存在分页的话,我们想区分第一页和后面数页,当前的通用做法是在标题上加入分页码,帝国cms中如何做到呢.我们可以修改在e/class/functions.php中的源码.找到找到GetHt ...

  9. 关于帝国cms 列表页SEO优化的问题

    一般列表页面中,我们都需要带分页信息区分当前页号,为区分第一页,和第一页后的其他所有分页页面.我们推荐的做法为:第一页显示正常的标题,从第二页开始便显示xxxxx-第2页-xxxx网.做法是.修改帝国 ...

随机推荐

  1. vue项目图片路径问题

    一般情况下我们为了能在本地显示效果,写图片路径会直接这样写,但是在实际中图片一般都是动态上传的, 所以,在vue中一般是这样的: 但是这样你会发现,图片根本显示不出来,只是显示了个图片的图标. 后来发 ...

  2. Solr分组查询

     项目中需要实时的返回一下统计的东西,因此就要进行分组,在获取一些东西,代码拿不出来,因此分享一篇,还是很使用的. facet搜索 /** * * 搜索功能优化-关键词搜索 * 搜索范围:商品名称.店 ...

  3. EF 查询时,返回其中一张表(省掉一个个写字段的麻烦)

    1.使用partial将需要添加的字段进行扩展 public partial class T_OrderInfo { public string EntName { get; set; } } 2.使 ...

  4. idea生成get/set方法

    如图:

  5. 你的MySQL服务器开启SSL了吗?(转载)

    最近,准备升级一组MySQL到5.7版本,在安装完MySQL5.7后,在其data目录下发现多了很多.pem类型的文件,然后通过查阅相关资料,才知这些文件是MySQL5.7使用SSL加密连接的.本篇主 ...

  6. [CSP-S模拟测试]:毛二琛(DP)

    题目描述 $MYC$在$NOI2018$中,遇到了$day1T2$这样一个题,题目是让你求有多少“好”的排列.$MYC$此题没有获得高分,感到非常惭愧,于是回去专心研究排列了.如今数排列的题对$MYC ...

  7. [CSP-S模拟测试]:排列组合(数学 or 找规律)

    题目描述 $T$组数据,每次给定$n$,请求出下式的值,对$10^9+7$取模: $$C_n^0\times C_n^0+C_n^1\times C_n^1+C_n^2\times C_n^2+... ...

  8. node.js安装和配置(windows系统)

    node.js安装和配置(windows系统) node javasript vscode  node是javascript的管理工具,所以开发javasript项目都要下载安装和配置node. 传送 ...

  9. Php.ini 中文注释详细

    Php.ini 中文注释 这个文件控制了PHP许多方面的观点.为了让PHP读取这个文件,它必须被命名为   ; ´php.ini´.PHP 将在这些地方依次查找该文件:当前工作目录:环境变量PHPRC ...

  10. centos6最小化安装默认没有 NetworkManager服务

    转载Centos6最小化安装中设置网卡默认启动   Centos 6.0版本提供了一个"最小化"(Minimal)安装的选项.这是一个非常好的改进,因为系统中再也不会存在那些不必要 ...