欢迎访问织梦学习网,加群!!!!!!!!!!!!!!!!
当前位置:主页 > 安装使用 >

织梦DedeCMS搜索指定多个栏目的文档

2020-01-06 dedecms安装使用 织梦,DedeCMS,搜索,指定,多个,栏,目的,文档,
针对dedestudy.cn/' target='_blank'>织梦高级开发教程会用到,指定栏目搜索及多个栏目合并搜索的要求。dedestudy.cn/' target='_blank'>织梦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).") ";

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