WordPress WP_Query查询功能可用参数汇总

[cc]后附使用方法

可用参数

/**
* 作者参数 – 显示某些作者发表的文章
*/
‘author’ => ‘1,2,3,’ //(整数) – 作者ID [使用减号 (-) 排除某个作者 ID, 如: ‘author’ => ‘-1,-2,-3,’]
‘author_name’ => ‘luetkemj’, //(字符串) – 使用 ‘user_nicename’ 用户昵称,(不是名称)

/**
* 分类参数 – 显示某个分类里面的文章
*/
‘cat’ => 5,//(整数) – 分类id
‘category_name’ => ‘staff’, ‘news’, //(字符串) – 分类别名(不是名称)
‘category__and’ => array( 2, 6 ), //(数组) – 分类id
‘category__in’ => array( 2, 6 ), //(数组) – 分类id
‘category__not_in’ => array( 2, 6 ), //(数组) – 分类id

/**
* 标签参数 – 显示含有某些标签的文章
*/
‘tag’ => ‘cooking’, //(字符串) – 标签别名
‘tag_id’ => 5, //(整数) -标签id
‘tag__and’ => array( 2, 6), //(数组) – 标签id
‘tag__in’ => array( 2, 6), //(数组) – 标签id
‘tag__not_in’ => array( 2, 6), //(数组) – 标签id
‘tag_slug__and’ => array( ‘red’, ‘blue’), //(数组) – 标签别名
‘tag_slug__in’ => array( ‘red’, ‘blue’), //(数组) – 标签别名

/**
* 自定义分类法参数 – 显示某些自定义分类法里面的文章
* 重要提示: tax_query 使用多维数组
* 这种查询结构允许我们查询多个自定义分类法
*/
‘tax_query’ => array( //(数组) – 使用自定义分类法查询参数 (3.1及以后版本可用).
‘relation’ => ‘AND’, //(字符串) – 可用的值有 ‘AND’ 或 ‘OR’ 和 SQL 的 JOIN 作用是相同的
array(
‘taxonomy’ => ‘color’, //(字符串) – 自定义分类法
‘field’ => ‘slug’, //(字符串) – 使用别名还是分类作为查询条件 (‘id’ 或 ‘slug’)
‘terms’ => array( ‘red’, ‘blue’ ), //(整数/字符串/数组) – 自定义分类法分类条目
‘include_children’ => true, //(布尔值) – 是否包含自分类,默认为真
‘operator’ => ‘IN’ //(字符串) – 测试条件,可用值为 ‘IN’, ‘NOT IN’, ‘AND’.
),
array(
‘taxonomy’ => ‘actor’,
‘field’ => ‘id’,
‘terms’ => array( 103, 115, 206 ),
‘include_children’ => false,
‘operator’ => ‘NOT IN’
)
),

/**
* 文章 & 页面参数- 基于文章或页面参数显示文章
*/
‘p’ => 1, //(整数) – 文章id
‘name’ => ‘hello-world’, //(字符串) – 文章别名
‘page_id’ => 1, //(整数) – 页面id
‘pagename’ => ‘sample-page’, //(字符串) – 页面别名
‘pagename’ => ‘contact_us/canada’, //(字符串) – 用斜杠‘/’分割的父页面别名/子页面别名来显示子页面
‘post_parent’ => 1, //(整数) – 页面id,只返回子页面,只对有子页面的页面有效
‘post__in’ => array(1,2,3), //(数组) – 需要显示的文章的id
‘post__not_in’ => array(1,2,3), //(数组) – 需要排除的文章的id
//注意:不能在同一个查询里同时使用 ‘post__in’ 和 ‘post__not_in’

/**
* 文章类型 & 状态参数 – 显示某些文章类型里面的文章
*/
‘post_type’ => array( //(字符串/ 数组) – 文章类型,根据文章类型获取文章,默认为’post’
‘post’, // – 文章
‘page’, // – 页面
‘revision’, // – 文章版本
‘attachment’, // – 附件,默认 WP_Query 设置了发布状态为 ‘post_status’=>’published’, 但是附件默认为 ‘post_status’=>’inherit’,所以你需要设置状态为 ‘inherit’ 或’any’.
‘my-post-type’, // – 自定义文章类型 (例如:movies)
),
‘post_status’ => array( //(字符串 / 数组) – 使用文章状态,根据文章状态获取文章,默认为 ‘publish’
‘publish’, // – 已发布的文章或页面
‘pending’, // -等待复审的文章
‘draft’, // – 处于草稿状态的文章
‘auto-draft’, // – 自动保存为草稿的文章
‘future’, // – 定时发布的文章
‘private’, // – 未登录用户不能查看的私有文章
‘inherit’, // – 版本. 具体参考 get_children.
‘trash’ // – 回收站中的文章 (2.9和以后的版本可用).
),

//注意:The ‘any’ 关键字可以用在 post_type 和 post_status 查询,但是不能在数组中使用
‘post_type’ => ‘any’, // – 获取所有文章类型里面的文章,除了版本和文章类型参数’exclude_from_search’设置为true的文章类型
‘post_status’ => ‘any’, // – 获取处于所有文章状态的文章,除了版本和文章类型参数’exclude_from_search’设置为true的文章类型

/**
* 分页参数
*/
‘posts_per_page’ => 10, //(整数) – 每页显示的文章数量 (2.1和以后的版本可用), 使用’posts_per_page’=-1 显示所有文章,如果查询处于订阅源中,WordPress用 ‘posts_per_rss’ 选项覆盖了这里的设置,需要使用这个限制,尝试使用 ‘post_limits’ 过滤器,或使用 ‘pre_option_posts_per_rss’过滤器返回 -1
‘posts_per_archive_page’ => 10, //(整数) – n每页显示的文章数量 – 只在存档页面使用,在存档页面和搜索结果页面覆盖了 showposts 和 posts_per_page 参数
‘nopaging’ => false, //(布尔值) – 在一页显示所有文章或使用分页,默认值为 ‘false’, 使用分页
‘paged’ => get_query_var(‘paged’), //(整数) – 页数,分页时显示第几页
//注意:使用 get_query_var(‘page’); 如果查询在设置为首页的页面模版中工作,查询参数 ‘page’ 拥有文章分页或内容中使用

1 2
原文链接:https://xiaohost.com/5101.html,转载请注明出处。
0