君语贤
时光静好,与君语;细水流年,与君同;繁华落尽,与君老...

首页>织梦开发>功能优化>正文

dedecms搜索指定多个栏目的文档

2020-07-03 标签:dedecms指定多个栏目搜索

织梦DedeCMS默认的搜索可以搜索全部栏目或者指定的搜索某一个栏目,不能搜索指定的多个栏目,需要修改后台文件才能实现。

1、在搜索框表单里加个typeid提交过去

例如

<formname="search"action="/plus/search.php">
<inputtype="hidden"name="typeid"value="1,2,3">
</form>

2、打开/plus/search.php找到

$typeid=(isset($typeid)&&is_numeric($typeid))?$typeid:0;

删除这一行后,继续找到

$typeid=intval($typeid);

也删除这一行

3、打开 /include/arc.searchview.class.php 找到

$ksqls[]="typeidIN(".GetSonIds($this->TypeID).")";

改成

//指定了多个栏目时
if(preg_match('#,#',$this->TypeID))
{
$typeids=explode(',',$this->TypeID);
foreach($typeidsas$ttid)
{
$typeidss[]=GetSonIds($ttid);
}
$typeidStr=join(',',$typeidss);
$typeidss=explode(',',$typeidStr);
$typeidssok=array_unique($typeidss);
$typeid=join(',',$typeidssok);
$ksqls[]="arc.typeidIN($typeid)";
}
else
{
$ksqls[]="arc.typeidIN(".GetSonIds($this->TypeID).")";
}

完成,这样就可以搜索指定的多个栏目的文章了。


图文推荐
热门标签
命名规则默认文档修改 添加tag链接字数限制指定多个栏目搜索常用字段名field标签搜索结果页下载远程编辑状态默认调用修改文章字数统计判断输出多个字段头在线发布火车dedecm