使用pre_get_posts钩子增加搜索的文章类型

已解决 关闭
0
0

可能有的博客增加了自己的搜索类型post_type
比如:download
那么直接用wp的搜索可能搜索不到需要添加这个段代码到你主题function.php里

add_filter('pre_get_posts','tgm_io_exclude_pages');
/**
* This function modifies the main WordPress query to remove pages from search results.
*
*@paramobject $query  The original query
*@returnobject $query The amended query.
 */
function tgm_io_exclude_pages($query) {
	
    if($query->is_search) {
	$query->set('post_type','post');
}
    
    return $query;
    
}
  • 您必须 后才能发表评论
最佳答案
0
0

另一种

function wds_cpt_search( $query ) {
if ( is_search() && $query->is_main_query() && $query->get( ‘s’ ) ){
$query->set(‘post_type’, array( ‘page’, ‘post’, ‘questions’,’download’,’phort_post’ ));
}
return $query;
};

add_filter(‘pre_get_posts’, ‘wds_cpt_search’);

  • 您必须 后才能发表评论
显示 1 结果