我們需要按照需求排除一些在搜索中的指定的文章或是頁面,通過這次的wordpress開發教程,教你如何實現
在開發wordpress主題的時候,我們需要按照需求排除一些在搜索中的指定的文章或是頁面,通過這次的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');
排除指定 ID 的文章或頁面
//搜索結果排除特定 ID 的文章或頁面
function Bing_search_filter_id($query) {
if ( !$query->is_admin && $query->is_search) {
$query->set('post__not_in', array(1,2));//文章或者頁面的ID
}
return $query;
}
add_filter('pre_get_posts','Bing_search_filter_id');
排除某些分類的文章
//搜索結果排除某些分類的文章
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');
關于控制文章顯示方面,您還可以參考參考這篇wordpress開發教程: