图片待添加
图片待添加

WordPress主题开发:侧边栏调用文章列表按某段时间评论数量排序

2020-02-28 15:55 分类:WordPress主题开发制作教程 阅读(次阅读) 标签:,

WordPress主题开发的时候希望侧边栏的一个文章列表按评论数量排序,可以自己设置时间段,防止老是那几篇文章.

打开当前WordPress主题的functions.php文件.
在<?php下面的?>前面添加如下代码:

function most_comm_posts($days=7, $nums=10) { //$days参数限制时间值,单位为‘天’,默认是7天;$nums是要显示文章数量
global $wpdb;
 
$today = date("Y-m-d H:i:s"); //获取今天日期时间
 
$daysago = date( "Y-m-d H:i:s", strtotime($today) - ($days * 24 * 60 * 60) );  //Today - $days
 
$result = $wpdb->get_results("SELECT comment_count, ID, post_title, post_date FROM $wpdb->posts WHERE post_date BETWEEN '$daysago' AND '$today' ORDER BY comment_count DESC LIMIT 0 , $nums");
 
$output = '';
 
if(empty($result)) {
 
$output = '<li>None data.</li>';
 
} else {
 
foreach ($result as $topten) {
 
$postid = $topten->ID;
 
$title = $topten->post_title;
 
$commentcount = $topten->comment_count;
 
if ($commentcount != 0) {
 
$output .= '<li><a href="'.get_permalink($postid).'" title="'.$title.'">'.$title.'</a> ('.$commentcount.')</li>';
 
}
 
}
 
}
 
echo $output;}

然后在前台需要输出文章列表的位置添加如下代码,一般是WordPress主题的侧边栏:

<h3>近期热门文章</h3>
<ul>
   <?php if(function_exists('most_comm_posts')) most_comm_posts(30, 10); ?>
</ul>

侧边栏调用代码解释: (30, 10)的两个参数:
函数参数 1 是按天计算的,30 就是 30 天,即一个月;
参数 2 是文章显示数量,10 就是显示 10 篇,自己根据所需设置。

接下来可以在WordPress主题开发时设置style.css给侧边栏调用文章列表按某段时间评论数量排序一个漂亮的样式


本文地址: https://www.wpyi.com/pinglun-paixu.html