WordPress 文章查询教程4:如何使用文章状态参数

在 WordPress 中,使用 WP_Query 进行文章查询是最常见的操作,学习好这方面的操作, WordPress 开发基本就学会了一半。

第四讲,关于查询特定状态的文章,只有 post_status 这一个参数,可以是字符串或者数组,默认值是 'publish',如果用户一登录的情况下,'private' 状态的文章也会被获取到。另外默认情况下公开属性的自定义状态的文章也会获取到,如果是在后台运行(后台或者AJAX调用)的话,受保护属性的状态的文章也会被获取,默认受保护属性是 'future', 'draft' 和 'pending'。

  • 'publish' – 已发布的文章。
  • 'pending' – 待审核的文章。
  • 'draft' – 还在草稿箱的文章。
  • 'auto-draft' – 自动草稿,新建还没有内容的文章。
  • 'future' – 定时发布的文章.
  • 'private' – 非登录用户看不到的文章
  • 'inherit' – 文章修订,一般使用 get_children() 函数获取。
  • 'trash' – 在垃圾桶里面的文章。
  • 'any' – 获取除了 'exclude_from_search' 属性为 true (比如 trash 和 auto-draft)的其他所有状态状态的文章。

只显示草稿状态的文章:

$query = new WP_Query( array( 'post_status' => 'draft' ) );

显示多个状态的文章:

$query = new WP_Query( array( 'post_status' => array( 'pending', 'draft', 'future' ) ) );

显示所有附件:

$query = new WP_Query( array( 'post_status' => 'any', 'post_type'   => 'attachment' ) );

©我爱水煮鱼,本站推荐使用的主机:阿里云,国外主机建议使用BlueHost

本站长期承接 WordPress 优化建站业务,要求很高,有兴趣请联系微信:「chenduopapa」或微信公众号:「WordPress果酱」。

标签: WordPress 教程

热门文章