我使用下面的代码在Wordpress中进行查询,并从一个类别中获取最后插入的两个帖子。我必须对每个类别进行两个查询才能获得所需的结果。是否可以在一个查询中从两个类别中获取最后插入的两个帖子?四个帖子的总结果,一个类别两个,另一个类别两个,一个查询。任何帮助表示赞赏。
$wp_query = new WP_Query(
array(
'posts_per_page' => '3',
'order' => 'DESC',
'post_status' => 'publish',
'ignore_sticky_posts' => true,
'no_found_rows' => true,
'cat' => '33',
)
);
答案 0 :(得分:1)
您是否尝试在查询中同时获得这两个类别?
我在其他地方找到了
https://wordpress.stackexchange.com/questions/228797/get-latest-posts-from-multiple-categories
$args = array( 'posts_per_page' => 5, 'category' => array(15,16,17,18,19) );
您不能只将数字添加到列表中,但我找不到任何数字 类别元素允许使用倍数(作为名称的文档) 是类别)
另一种选择是使用wp_query和category__in
$query = new WP_Query( array( 'category__in' => array(15,16,17,18,19), 'posts_per_page' => 5, 'post_type' => 'post', ) ); if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); // do something } } wp_reset_postdata();
如果您选择了这些类别中的最后5个帖子, 想要从他们每个人那里获得帖子,那么查询需要很多 不同
我的版本是:
$query = new WP_Query(
array(
'category__in' => array(15,16),
'posts_per_page' => 4,
'post_type' => 'post',
'order' => 'DESC',
'orderby' => 'date'
)
);
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
// do something
}
}
wp_reset_postdata();