WordPress 实现文章评论排行榜

时间:2021-05-02

用到了WordPress功能函数Query_post()的一种高级用法,就是获取本周或当月或最近30天评论最多的一定数量的日志。

使用方法是将以下各段代码放置到需要显示最热日志的主题模板文件中适当的位置即可,如边栏(sidebar.php)。

所有时间内评论最多日志

  • <ul><?phpquery_posts('postpost_type=post&posts_per_page=10&orderby=comment_count&order=DESC');while(have_posts()):the_post();?>
  • <li><ahref="<?phpthe_permalink();?>"title="<?phpprintf(esc_attr('Permalinkto%s'),the_title_attribute('echo=0'));?>"rel="bookmark"><?phpthe_title();?></a></li>
  • <?phpendwhile;wp_reset_query();?>
  • </ul>
  • 这段代码默认显示前10篇评论最多的日志,数量10可修改为其它数值。
    本周评论最多日志
    要显示本周评论最多日志,我们就可以使用如下的代码,也就是在前面代码的基础上再添加一些额外的参数来实现:

  • <ul><?php$week=date('W');$year=date('Y');query_posts('postpost_type=post&posts_per_page=10&orderby=comment_count&order=DESC&year='.$year.'&w='.$week);while(have_posts()):the_post();?>
  • <li><ahref="<?phpthe_permalink();?>"title="<?phpprintf(esc_attr('Permalinkto%s'),the_title_attribute('echo=0'));?>"rel="bookmark"><?phpthe_title();?></a></li>
  • <?phpendwhile;wp_reset_query();?>
  • </ul>
  • 最近30天评论最多日志

  • <ul><?phpfunctionfilter_where($where=''){//postsinthelast30days$where.="ANDpost_date>'".date('Y-m-d',strtotime('-30days'))."'";return$where;}add_filter('posts_where','filter_where');query_posts('postpost_type=post&posts_per_page=10&orderby=comment_count&order=DESC');while(have_posts()):the_post();?>
  • <li><ahref="<?phpthe_permalink();?>"title="<?phpprintf(esc_attr('Permalinkto%s'),the_title_attribute('echo=0'));?>"rel="bookmark"><?phpthe_title();?></a></li>
  • <?phpendwhile;wp_reset_query();?>
  • </ul>
  • “30 days”可以根据需要修改为其他值(如“1 year”, “7 days”, 等)。

    本月评论最多日志
    类似地,显示当月评论最多的日志,可以使用下面的代码:

  • <ul><?php$month=date('m');$year=date('Y');query_posts('postpost_type=post&posts_per_page=10&orderby=comment_count&order=DESC&year='.$year.'&monthnum='.$month);while(have_posts()):the_post();?>
  • <li><ahref="<?phpthe_permalink();?>"title="<?phpprintf(esc_attr('Permalinkto%s'),the_title_attribute('echo=0'));?>"rel="bookmark"><?phpthe_title();?></a></li>
  • <?phpendwhile;wp_reset_query();?>
  • </ul>

  • 欢迎补充说明~

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章