我有两种帖子类型, 常规帖子和自定义帖子类型。一切正常, 我只显示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();
?>
预期输出应该是最新的完整帖子, 因为它现在正在工作。然后, 它应该显示两个最新的帖子类型帖子和两个最新的帖子类型教程帖子。
#1
基本上, 你只需要按posttype排序
$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文档。
请记住, 如果你有5篇新文章, 那么你的任何教程都不会显示。为了保证3个帖子和2个教程, 你将需要使用posts_per_page参数将代码分成2个wp_query循环。
评论前必须登录!
注册