织梦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).") ";
 
}
 
完成,这样就可以搜索指定的多个栏目的文章了。


1、本网站名称:源码村资源网
2、本站永久网址:https://www.yuanmacun.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
源码村资源网 » 织梦DedeCMS搜索指定多个栏目的文档
您需要 登录账户 后才能发表评论

发表评论

欢迎 访客 发表评论