WordPress教程

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

阿里云

WordPress 是非常强大的程序,通过各种自定义配置,可以实现各种各样的需求,今天我们通过配置文章查询函数来实现文章列表的自定义排序。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.     );
  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();?>
也想出现在这里?联系我们
创客主机

上述查询函数中,我们通过修改 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.     );
  12.     $query_posts = new WP_Query();
  13.     $query_posts->query($args);
  14.     while( $query_posts->have_posts() ) { $query_posts->the_post(); ?>
  15.     <li>
  16.     <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
  17.     <?php the_title(); ?>
  18.     </a>
  19.     </li>
  20.     <?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 是非常强大的,通过各种自定义配置,可以实现各种各样的需求。

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

已有 610 人购买
查看演示升级 VIP立刻购买

收藏
(2)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!