在主题的functions.php中添加代码,假设要排除ID为40和9的文章(也可以是页面,文章和页面都有唯一的ID)
// search filter
function fb_search_filter($query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('post__not_in', array(40, 9) ); // 文章或者页面的ID
}
return $query;
}
add_filter( 'pre_get_posts', 'fb_search_filter' );
在主题的functions.php中添加如下代码,即可在搜索结果中排除所有页面
add_filter('pre_get_posts','search_filter');
function search_filter($query) {
if ($query->is_search) {
$query->set('post_type', 'post');
}
return $query;
}
在主题的functions.php中添加如下代码,即可在搜索结果中排除ID为1和2的分类下的所有文章
function search_filter( $query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('cat','-15,-57'); // 分类的ID,前面加负号表示排除
}
return $query;
}
add_filter('pre_get_posts','search_filter');