WordPress 技巧:月度文章排行的显示方法

很多个人博客都习惯在侧栏显示出月度文章排行或年度文章排行,这种显示方式可以直接增加网友访问博客时对博客一些热门文章的关注度。本文与大家分享如何在侧栏显示出月度文章排行

这里说的文章排行是指评论最多的文章,而不是浏览量最多的文章。评论多也就是关注度高,园子认为这才叫热门。如果你想完全按照文章的浏览次数来显示,建议你看下:WordPress 年度月度博客文章统计插件使用方法

这个方法来源于 zwwooooo 的某段时间内最热文章,原文请点击这里

我喜欢他提供的方法最主要的原因是使用比较灵活,可以自己定义某一段时间内热门文章排行的显示,你可以设置成一个月或两三个月的。

WordPress 技巧:月度文章排行的显示方法

1.把以下代码添加到你主题文件的 functions.php 里面。

/* 某段时间内最热文章
 * Reference: http://www.wprecipes.com/rarst-asked-how-to-get-most-commented-posts-of-the-week
 * Edit: zwwooooo
 */
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 = '
  • None data.
  • '; } else { foreach ($result as $topten) { $postid = $topten->ID; $title = $topten->post_title; $commentcount = $topten->comment_count; if ($commentcount != 0) { $output .= '
  • '.$title.' ('.$commentcount.')
  • '; } } } echo $output; }

    2.在侧栏文件 sidebar.php 调用,代码如下:

    近期最热文章

    园子友情提醒:most_comm_posts 函数后面的参数1是按天来计算的,你可以自定义天数,如30。参数2是文章显示的个数,如想显示10篇就写10即可。

    例如:most_comm_posts(30, 10);意思就是30天之内评论最多的文章显示10篇。

    WordPress 技巧:月度文章排行的显示方法》上有39条评论

    发表评论