家明故事

[DedeCMS] 搜索结果中去除隐藏栏目的内容

家明 0 0

当我们在做DedeCMS搜索功能时,发现默认的系统在搜索时也包含了隐藏栏目的内容,那么如何使搜索结果不包含隐藏栏目的内容呢?

只需要按照下面的提示修改就可以了。

1. 打开文件  include/arc.searchview.class.php ,大概在705行,将搜索SQL添加一个字段 act.ishidden 即可。

//搜索
$query = "SELECT arc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath
FROM `{$this->AddTable}` arc LEFT JOIN `#@__arctype` act ON arc.typeid=act.id
WHERE {$this->AddSql} $ordersql LIMIT $limitstart,$row";

2. 修改后如下:

//搜索
//添加 act.ishidden 和 AND act.ishidden='0'
$query = "SELECT arc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath,act.ishidden
FROM `{$this->AddTable}` arc LEFT JOIN `#@__arctype` act ON arc.typeid=act.id
WHERE {$this->AddSql} AND act.ishidden='0' $ordersql LIMIT $limitstart,$row";

这样在搜索时就会去除隐藏栏目的内容了。 注意:如此更改后虽然不会显示隐藏栏目内容,但搜索结果总条数依然包含隐藏栏目的内容。

点击查看文章《DedeCMS 去除搜索结果总记录数中的隐藏栏目内容》即可去掉数量。


标签:搜索  隐藏栏目  DedeCMS  织梦CMS  

打赏

发表评论