我有两种帖子类型,常规帖子和自定义帖子类型。一切正常,我只显示5个帖子。一则为正式职位,四则为摘要。我的问题是摘录显示的是最新帖子,而与帖子类别无关。我想显示两个帖子和两个自定义帖子类型。
$args = array(
'post_type' => array( 'post', 'tutorial' ),
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) :
$count = 0;
while ( $query->have_posts() ) : $query->the_post();
if ( $count == 0 ) { ?>
<h2><?php the_title(); ?></h2>
<?php the_content();
$count ++;
} else { ?>
<h2><?php the_title(); ?></h2>
<?php the_excerpt();
}
endwhile;
endif;
wp_reset_postdata();
?>
预期的输出应该是最新的完整帖子,因为它现在正在工作。然后应显示两个最新的帖子类型帖子和两个最新的帖子类型教程。
答案 0 :(得分:1)
基本上,您只需要按邮政类型排序
$args = array(
'post_type' => array( 'post', 'tutorial' ),
'orderby' => 'post_type',
'order' => 'ASC',
);
如果您希望将日期排序作为第二种排序方式,则应该可以使用(未经测试)。
$args = array(
'post_type' => array( 'post', 'tutorial' ),
'orderby' => array ('post_type' => 'ASC', 'order' => 'DESC' ),
);
有关更多信息,请检查WP_Query documentation
请记住,如果您有5篇新文章,那么您的任何教程都不会显示。
为了保证有3个帖子和2个教程,您需要使用wp_query
参数将代码分成2个posts_per_page
循环。