WordPress获得当前帖子类别中最受欢迎的帖子

时间:2018-12-13 10:18:27

标签: php wordpress

我希望在我所有帖子的底部获得最受欢迎的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技能简直太短了!任何帮助表示赞赏。

1 个答案:

答案 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();