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

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

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

2020-07-03 11:37 君语贤dedecms指定多个栏目搜索

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

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

例如

<form name="search" action="/plus/search.php">
<input type="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[] = " typeid IN (".GetSonIds($this->TypeID).") ";

改成

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

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


本文链接:https://www.weguiding.com/gnyh/727.html

图文推荐
热门标签
dede织梦自定义表单文章调用修改页面模板tag代码