dedecms channel增加keyword根据关键词显示子栏目

 设计了一个网站里边有太多的子栏目但子栏目有很多关键词做区分和调用{dede:channel} 并不支持只好自己动手修改了我这里关键词用的是栏目的关键词根据栏目的关键词调用区分.

我用的版本是5.7MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

找到include\taglib目录下的channel.lib.phpMEa迪尔课堂自学网---官网 (迪尔掌上课堂)

找到$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|";MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

替换为:MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|,keyword|";MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

在$reid = 0;上边增加:MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

if($keyword){MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

$keyword=' keywords like "%'.$keyword.'%" and ';MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

}MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

接下来去找对应的sql语句因为我是调用一个栏目下的子栏目所以我只改了$type=='son'下的sql语句MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

找到$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepathMEa迪尔课堂自学网---官网 (迪尔掌上课堂)
From `#@__arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

替换为:MEa迪尔课堂自学网---官网 (迪尔掌上课堂)
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,keywords,description From `#@__arctype` WHERE $keyword reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

其他地方也照着此方法替换就行了主要就是在sql语句中加了 WHERE $keyword这个MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

调用标签为:MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

{dede:channel type='sun' row='200' typeid = '1' keyword='远程'}MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

[field:typename/]MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

{/dede:channel}MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

 
 
MEa迪尔课堂自学网---官网 (迪尔掌上课堂)

扫一扫手机访问