如题所说,WordPress搜索结果怎么排除指定分类或页面的内容?
今天小编教你怎么解决该问题,可以在当前WordPress模板函数文件functions.php中添加以下代码即可:
1、WordPress搜索结果排除指定”页面“
function search_filter_page($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts','search_filter_page');
2、WordPress搜索结果排除指定”分类“
function Bing_search_filter_category( $query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('cat','-1,-2'); //分类的ID,前面加负号表示排除;如果直接写ID,则表示只在该ID中搜索
}
return $query;
}
add_filter('pre_get_posts','Bing_search_filter_category');
3、WordPress搜索结果排除指定ID的文章或page页面
function Bing_search_filter_id($query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('post__not_in', array(1,5));//文章或者页面的ID
}
return $query;
}
add_filter('pre_get_posts','Bing_search_filter_id');