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

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

我用的版本是5.72Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

找到include\taglib目录下的channel.lib.php2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

找到$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|";2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

替换为:2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

$attlist = "typeid|0,reid|0,row|100,col|1,type|son,currentstyle|,cacheid|,keyword|";2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

在$reid = 0;上边增加:2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

if($keyword){2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

$keyword=' keywords like "%'.$keyword.'%" and ';2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

}2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

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

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

替换为:2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂
$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 ";2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

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

调用标签为:2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

{dede:channel type='sun' row='200' typeid = '1' keyword='远程'}2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

[field:typename/]2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

{/dede:channel}2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

 
 
2Ji 迪尔课堂-官网-免费自学网站-迪尔掌上课堂

扫一扫手机访问