首页 >

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

针对织梦高级开发教程会用到,指定栏目搜索及多个栏目合并搜索的要求。织梦DedeCMS默认的搜索可以搜索全部栏目或者指定的搜索某一个栏目,不能搜索指定的多个栏目,需要修改后台文件才能实现。

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

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

例如

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).") ";}

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


织梦DedeCMS搜索指定多个栏目的文档
  • 防止织梦DedeCMS被挂黑链的几个要点
  • 防止织梦DedeCMS被挂黑链的几个要点 | 防止织梦DedeCMS被挂黑链的几个要点 ...

    织梦DedeCMS搜索指定多个栏目的文档
  • {dede:channel type='son'} 调用栏目标签用法
  • {dede:channel type='son'} 调用栏目标签用法 | {dede:channel type='son'} 调用栏目标签用法 ...

    织梦DedeCMS搜索指定多个栏目的文档
  • 织梦DedeCMS获取当前栏目的上级栏目的方法
  • 织梦DedeCMS获取当前栏目的上级栏目的方法 | 织梦DedeCMS获取当前栏目的上级栏目的方法 ...