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

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

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

2020-07-03 11:37 标签:dedecms指定多个栏目搜索

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

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

例如

<formname="search"action="/plus/search.php">
<inputtype="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[]="typeidIN(".GetSonIds($this->TypeID).")";

改成

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

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


图文推荐
热门标签
网站图片时间格式显示格式发布时间图片路径修改.OSS储存.改造图片显示熊掌号修复方法显示空白模块管理自定义属性全站文章量文章量当前栏目统计审核静态发布示例自增数