任何人都知道WP_Pagenavi是否支持使用两种不同的帖子类型分页自定义存档?
例如:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$parameters = array(
'paged'=>$paged,
'posts_per_page' => 10,
'post_type' => array('post', 'portfolio')
);
$home_stream = new WP_Query( $parameters );
wp_pagenavi(array('query'=>$home_stream));
// ... do my loop stuff
wp_pagenavi(array('query'=>$home_stream));
这会导致显示正确数量的页码(在我的情况下为18),但点击超出第一个帖子类型(帖子,第14页)页数的任何页面都会产生404分页存档。
答案 0 :(得分:0)
我不完全确定这是否会回答你的问题,但这可能有所帮助。
以下代码设置特定帖子类型的主查询(将其放入funcitons.php)中的每页帖子。
function wpse_modify_video_archive_query( $query ) {
// Only apply to the main loop on the frontend.
if ( is_admin() || ! $query->is_main_query()) {
return false;
}
if ( $query->is_post_type_archive( 'video' ) ) {
$query->set( 'posts_per_page', 6 );
}
if ( $query->is_post_type_archive( 'testimonial' ) ) {
$query->set( 'posts_per_page', 8 );
}
}
add_action( 'pre_get_posts', 'wpse_modify_video_archive_query' );
这会将每页的视频帖子类型帖子设置为6,将每页的推荐帖子设置为8。
如果要在页面上修改原始查询,可以使用
wp_reset_postdata();
在创建新查询之前。