当我们在做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 去除搜索结果总记录数中的隐藏栏目内容》即可去掉数量。
版权声明:本站部分内容来自互联网,若涉及版权问题请及时通知我们,我们将及时予以删除!谢谢大家的理解与支持!
发表评论