WordPress教程:获取本周或本月评论最多日志

作者:匿名 hihi 来源:SayBlog.Me 浏览: 2013-3-29 9:43:01 字号:
[摘要]在WordPress中有时候我们需要筛选出一段时间内评论最多的日志,并把这些日志放到首页的某个区域,本次的WordPress教程给大家讲解Query_post函数的高级用法,通过Query_post函数来实现热门日志获取功能。

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

  下面要讲的是,通过使用query_posts()函数来获取本周、本月或最近30天内容评论最多的日志。

  所有时间内评论最多日志

  首先,让我们来看看获取所有时间内评论最多日志的代码:

<ul>  <?php query_posts('post_type=post&posts_per_page=10&orderby=comment_count&order=DESC'); while (have_posts()): the_post(); ?>  <li><a href="<?php the_permalink(); ?>" title="<?php printf(esc_attr('Permalink to %s'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a></li>  <?php endwhile; wp_reset_query(); ?>  </ul> 

  这段代码默认显示前10篇评论最多的日志,数量10可修改为其它数值。

  本周评论最多日志

  要显示本周评论最多日志,我们就可以使用如下的代码,也就是在前面代码的基础上再添加一些额外的参数来实现:

<ul> <?php $week = date('W'); $year = date('Y'); query_posts('post_type=post&posts_per_page=10&orderby=comment_count&order=DESC&year=' . $year . '&w=' . $week);  while (have_posts()): the_post(); ?>  <li><a href="<?php the_permalink(); ?>" title="<?php printf(esc_attr('Permalink to %s'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a></li> <?php endwhile; wp_reset_query(); ?> </ul> 

  本月评论最多日志

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

<ul> <?php $month = date('m'); $year = date('Y'); query_posts('post_type=post&posts_per_page=10&orderby=comment_count&order=DESC&year=' . $year . '&monthnum=' . $month); while (have_posts()): the_post(); ?>  <li><a href="<?php the_permalink(); ?>" title="<?php printf(esc_attr('Permalink to %s'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a></li> <?php endwhile; wp_reset_query(); ?>  </ul>

  最近30天评论最多日志

  要获取最近30天内评论最多的日志所用的代码要复杂一些:

<ul> <?php function filter_where($where = '') {     //posts in the last 30 days     $where .= " AND post_date > '" . date('Y-m-d', strtotime('-30 days')) . "'";     return $where; } add_filter('posts_where', 'filter_where');  query_posts('post_type=post&posts_per_page=10&orderby=comment_count&order=DESC'); while (have_posts()): the_post(); ?> <li><a href="<?php the_permalink(); ?>" title="<?php printf(esc_attr('Permalink to %s'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a></li>  <?php endwhile; wp_reset_query(); ?>  </ul>

  代码中的“30 days”可以根据需要修改为其他值(如“1 year”, “7 days”, 等)。

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

  query_posts() 确实是一条相当有用的功能函数,就如本文所介绍的一样,可以为其设定许多参数。

  • 软件大小:6.28MB
  • 软件类别:国外软件 | 博客系统
  • 软件语言:简体中文
  • 运行环境:PHP/Mysql
  • 软件授权:免费版
  • 更新时间:2013-7-24 16:05:30
  • 相关链接:Home Page

sssss
Tags: WordPress   WordPress教程   获取热门日志   query_posts  
责任编辑:mcwm
编辑推荐排行