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

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

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

例如

1 <form name="search" action="/plus/search.php">
2
3 <input type="hidden" name="typeid" value="1,2,3">
4
5 </form>

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

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

删除这一行后,继续找到

1 $typeid = intval($typeid);

也删除这一行

 

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

$ksqls[] = ” typeid IN (“.GetSonIds($this->TypeID).”) “;

改成

01 //指定了多个栏目时
02
03 if( preg_match('#,#', $this->TypeID) )
04
05 {
06
07     $typeids = explode(',', $this->TypeID);
08
09     foreach($typeids as $ttid) {
10
11         $typeidss[] = GetSonIds($ttid);
12
13     }
14
15     $typeidStr = join(',', $typeidss);
16
17     $typeidss = explode(',', $typeidStr);
18
19     $typeidssok = array_unique($typeidss);
20
21     $typeid = join(',', $typeidssok);
22
23     $ksqls[] = " arc.typeid IN ($typeid) ";
24
25 }
26
27 else
28
29 {
30
31     $ksqls[] = " arc.typeid IN (".GetSonIds($this->TypeID).") ";
32
33 }

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

1. 本站实行充值兑换金币,1元=1金币,每日签到可领取1个金币,[我要充值]
2. 部分资源免费,登录后0元购买免费下载,收费资源价格也很低廉,1至100元不等,VIP会员全站无限下载,[去开通]
3. 本站正式上线, 推荐到QQ或者微信群免费获得VIP会员资格,详情[点我查看]
4. 如果您找不到合适的资源,请联系我们,告知您的需求,我们会在24小时内整理发布。
专注网站维护优化及织梦源码分享 » 织梦DedeCMS搜索指定多个栏目的文档

网迅云,安全稳定的云服务器,域名注册,香港空间的提供商!

虚拟主机 云服务器