配置orderby参数 实现WordPress文章自定义排序

王小优
王小优
王小优
231
文章
0
评论
2015年12月7日
评论
5,332 1666字阅读5分33秒

WordPress是非常强大的程序,通过各种自定义配置,可以实现各种各样的需求,今天我们通过配置文章查询函数来实现文章列表的自定义排序。

WordPress默认文章列表排序方式是根据发布时间,也就是最新的文章显示在列表最前面,那么我们如果想自定义文章的排序呢?如按修改时间、按评论数,甚至是按照阅读量排序~

配置orderby参数 实现WordPress文章自定义排序

WordPress文章查询有若干种方法,本文仅拿query_posts($args)数据查询来说,通过配置其中的orderby参数来实现各种排序。

  1. <?php
  2. $args = array(
  3. 'post_type' => 'post',
  4. 'post_status' => 'publish',
  5. 'posts_per_page' => '10',
  6. 'orderby' => 'date',
  7. 'order' => 'DESC',
  8. 'caller_get_posts' => 1,
  9. );
  10. $query_posts = new WP_Query();
  11. $query_posts->query($args);
  12. while$query_posts->have_posts() ) { $query_posts->the_post(); ?>
  13. <li>
  14. <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
  15. <?php the_title(); ?>
  16. </a>
  17. </li>
  18. <?php } wp_reset_query();?>

上述查询函数中,我们通过修改orderby后面的值来,实现不同的排序方式。

一般用法

按发布日期排序:orderby=date?

按修改时间排序:orderby=modified

按文章ID排序:orderby=ID

按评论最多排序:orderby=comment_count

按标题排序:orderby=title

随机排序:orderby=rand

特殊用法

如果我们想通过浏览量来排序呢?要知道WordPress默认是没有浏览量这个功能的,但是大多数的用户都通过主题或者插件实现了文章阅读量,其原理无一例外是通过自定义栏目增加阅读量的统计。因此我们可以通过自定义栏目的值大小来实现阅读量排序。

首先确定你的文章阅读量的自定义蓝色名称,一般为views。

然后我们将查询函数进行修改即可,得到如下代码:

  1. <?php
  2. $args = array(
  3. 'post_type' => 'post',
  4. 'post_status' => 'publish',
  5. 'posts_per_page' => '10', /* 显示几条 */
  6. 'meta_key' => 'views',/* 此处为你的自定义栏目名称 */
  7. 'orderby' => 'meta_value_num', /* 配置排序方式为自定义栏目值 */
  8. 'order' => 'DESC', /* 降序排列 */
  9. 'caller_get_posts' => 1,
  10. );
  11. $query_posts = new WP_Query();
  12. $query_posts->query($args);
  13. while$query_posts->have_posts() ) { $query_posts->the_post(); ?>
  14. <li>
  15. <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
  16. <?php the_title(); ?>
  17. </a>
  18. </li>
  19. <?php } wp_reset_query();?>

还有一个常见的查询函数:

  1. <?php
  2. $posts = get_posts(“numberposts=10&meta_key=views&orderby=meta_value_num&order=desc”);
  3. foreach$posts as $post ) :
  4. ?>
  5. ……
  6. <?php endforeach; ?>

WordPress是非常强大的,通过各种自定义配置,可以实现各种各样的需求。

若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如果喜欢,请打赏支持本站,谢谢大家!
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微博
  • 微博扫一扫
  • weinxin
王小优
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: