在 WordPress 中,使用 WP_Query
进行文章查询是最常见的操作,学习好这方面的操作, WordPress 开发基本就学会了一半。
「WordPress果酱」将通过一系列教程讲解如何使用 WP_Query
进行 WordPress 文章查询。
我写这一系列文章的目的也是为了方便自己使用这些参数的时候方便查询,所以如果你也是经常进行 WordPress 二次开发的话,建议收藏本文。
第三讲关于查询特定文章类型的文章,文章类型的参数只有 post_type
这一个,它可以是字符串或者数组,默认值是 'post',如果设置了分类参数 'tax_query
' 的话,默认值是 'any':
- 'post' – 文章。
- 'page' – 页面。
- 'revision' – 文章修订。
- 'attachment' – 附件,因为默认的 post_status 是 'publish',附件的默认的 post_status 是 'inherit'。所以如果你没有在查询中显式指定 post_status 为 'inherit' 或者 'any' 那么没有任何附件返回。
- 'nav_menu_item' – 导航菜单栏
- 'any' – 获取除了文章修订和除了文章类型的 'exclude_from_search' 的属性为 true 的所有文章类型。
- '自定义文章类型' - 如何 product 产品
只获取页面:
代码语言:javascript复制$query = new WP_Query( array( 'post_type' => 'page' ) );
获取任何类型的文章(除了文章修订和除了文章类型的 'exclude_from_search' 的属性为 true 的所有文章类型):
代码语言:javascript复制$query = new WP_Query( array( 'post_type' => 'any' ) );
获取多个文章类型的文章,包括自定义文章类型:
代码语言:javascript复制$query = new WP_Query( array( 'post_type' => array( 'post', 'page', 'product', 'movie' ) ) );