WordPress如何让当前分类的文章列表按阅读量排列和热评数量排列?

2025-03-07 03:58:18
推荐回答(1个)
回答1:

按阅读量排列,可安装插件 wp-postviews ,该插件提供了热门阅读文章列表调用代码:


   

          
       


或者


或者


//显示最热门文章

//显示某个或某些目录下最冷门文

//显示某个或某些目录下最热门文章

//显示指定标签下的最热门文章
//显示指定标签下的最冷门文章

//显示全站文章总共被浏览过多少次


特定时间内阅读量:


### Function: Get TimeSpan Most Viewed
function get_timespan_most_viewed($mode = '', $limit = 20, $days = 30, $display = true) {
global $wpdb, $post;
$limit_date = current_time('timestamp') - ($days*86400);
$limit_date = date("Y-m-d H:i:s",$limit_date);
$where = '';
$temp = '';
if(!empty($mode) && $mode != 'both') {
$where = "post_type = '$mode'";
} else {
$where = '1=1';
}
$most_viewed = $wpdb->get_results("SELECT DISTINCT $wpdb->posts.*, (meta_value+0) AS views FROM $wpdb->posts LEFT JOIN $wpdb->postmeta ON $wpdb->postmeta.post_id = $wpdb->posts.ID WHERE post_date < '".current_time('mysql')."' AND post_date > '".$limit_date."' AND $where AND post_status = 'publish' AND meta_key = 'views' AND post_password = '' ORDER  BY views DESC LIMIT $limit");
if($most_viewed) {
foreach ($most_viewed as $post) {
$post_title = get_the_title();
$post_views = intval($post->views);
$post_views = number_format($post_views);
$temp .= "
  • $post_title - $post_views ".__('views', 'wp-postviews')."
  • ";
    }
    } else {
    $temp = '
  • '.__('N/A', 'wp-postviews').'
  • '."\n";
    }
    if($display) {
    echo $temp;
    } else {
    return $temp;
    }
    }


    $days这个参数是多长时间内发表的文章,设置为30,就是1个月的热门文章。