我希望在我所有帖子的底部获得最受欢迎的3个帖子。我已经实现了。但是我确实需要显示当前帖子的主要类别中最受欢迎的前3名。
我用过
<?php $popular = new WP_Query(array(
'posts_per_page'=>3,
'meta_key'=>'popular_posts',
'orderby'=>'meta_value_num',
'order'=>'DESC'
));
获得最受欢迎。但是当我添加类别时,它什么也不会返回:
<?php $popular = new WP_Query(array(
'posts_per_page'=>3,
'cat' => 60,
'meta_key'=>'popular_posts',
'orderby'=>'meta_value_num',
'order'=>'DESC'));
我已经搜索了这个并且已经接近了,但是我怀疑我的php技能简直太短了!任何帮助表示赞赏。
答案 0 :(得分:0)
要匹配类别,请尝试以下操作:
$args = array(
'posts_per_page' => '3',
'meta_key'=>'popular_posts',
'orderby'=>'meta_value_num',
'order'=>'DESC',
'tax_query' => array(
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array ( 60 ) //you can add more comma separated category ids here
)
)
);
$popular = new WP_Query( $args );
if ( $popular->have_posts() ) :
while ( $popular->have_posts() ) : $popular->the_post();
echo '<div class="entry-content">';
echo '<h2 class="entry-title main_title">'.get_the_title().'</h2>';
the_content();
echo '</div><!-- .entry-content -->';
endwhile;
endif;
wp_reset_query();