首页 » PHP教程 » phpquery参数解析技巧_wp_query所有参数具体注释

phpquery参数解析技巧_wp_query所有参数具体注释

访客 2024-11-08 0

扫一扫用手机浏览

文章目录 [+]

/

WordPress 查询综合参考

phpquery参数解析技巧_wp_query所有参数具体注释

编译:luetkemj - luetkemj.com

phpquery参数解析技巧_wp_query所有参数具体注释
(图片来自网络侵删)

官方文档: http://codex.wordpress.org/Class_Reference/WP_Query

源代码: http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/query.php

/

$args = array(

/

作者参数 - 显示某些作者揭橥的文章

/

'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' 拥有文章分页或内容中利用 <!--nextpage--> 快捷代码的分页。

/

偏移参数

/

'offset' => 3, //(int) - 跳过的文章数量

/

排序 & 排序办法参数 - 对获取的文章进行排序

/

'order' => 'DESC', //(字符串) - 设置 'order_by' 参数升序或降序排列. 默认为'DESC'.

//Possible Values:

//'ASC' - 升序排列,从小到大 (1, 2, 3; a, b, c).

//'DESC' - 降序排列,从大到小 (3, 2, 1; c, b, a).

'orderby' => 'date', //(字符串) - 排序依据. 默认为 'date'.

//可用的参数有://

//'none' - 不排序 (2.8和往后的版本可用)

//'ID' - 根据ID排序,把稳ID是大写的

//'author' - 根据作者排序

//'title' - 根据标题排序

//'date' - 根据揭橥韶光排序

//'modified' - 根据末了修正韶光排序

//'parent' - 根据父页面排序

//'rand' - 随机排序

//'comment_count' - 根据评论数量排序 (2.9和往后的版本可用).

//'menu_order' - 根据页面序号排序. 常日在页面中利用 (编辑页面时有一个页面序号的字段) 和附件 ( 插入 / 上传媒体相册对话框中的数字), 但是不能对文章类型 'menu_order' 利用数字值 (默认都为 0).

//'meta_value' - 把稳'meta_key=keyname' 必须也涌如今查询中. 把稳排序是按照字母表顺序进行的。
(如:words),但是数字排序可能会有问题 (如:1, 3, 34, 4, 56, 6, etc, 而不是你希望的:1, 3, 4, 6, 34, 56)。

//'meta_value_num' - 根据数字meta值排序 (2.8和往后的版本中可用). 同时须要把稳'meta_key=keyname' 也要在查询中声明。
这个值和上面解释的 'meta_value' 一样,只不过值许可利用数字排序。

//'title menu_order' - 同时利用 menu_order 和 title 排序 更多信息请参考:http://wordpress.stackexchange.com/questions/2969/order-by-menu-order-and-title

//'post__in' - 利用 post__in 数组中制订的 ID 顺序 (3.5往后的版本中可用).

/

置顶文章参数 - 显示或忽略置顶文章

/

'ignore_sticky_posts' => false, //(布尔值) - 是否忽略置顶文章,默认为假不忽略. 在返回文章的开头忽略/打消置顶文章,但是置顶文章还是会在自然查询中列出。

//把稳:关于置顶文章的更多信息,请参考:http://codex.wordpress.org/Class_Reference/WP_Query#Sticky_Post_Parameters

/

韶光参数 - 显示某个韶光段内的文章

/

'year' => 2012, //(int) - 4 个数字的年份 (如:2011)

'monthnum' => 3, //(int) - 月份数字 (从 1 到 12)

'w' => 25, //(int) - 一年中的第几周 (从 0 到 53), 利用 MySQL WEEK 命令,此模式和"start_of_week" 选项干系

'day' => 17, //(int) - 月中的天数 (从 1 到 31)

'hour' => 13, //(int) - 小时 (从 0 到 23).

'minute' => 19, //(int) - 分钟 (从 0 到 60).

'second' => 30, //(int) - 秒 (从 0 到 60).

/

自定义字段参数 - 显示拥有某个自定义字段的文章

/

'meta_key' => 'key', //(字符串) - 自定义字段的键

'meta_value' => 'value', //(字符串) - 自定义字段的值

'meta_value_num' => 10, //(数字) - 自定义字段的值

'meta_compare' => '=', //(字符串) - 测试'meta_value'的操作。
可用的值有'!=', '>', '>=', '<', or ='. 默认为 '='.

'meta_query' => array( //(数组) - 自定义字段参数 (3.1和往后的版本可用).

array(

'key' => 'color', //(字符串) - 自定义字段的键

'value' => 'blue', //(字符串/数组) - 自定义字段的值 (把稳:数组的支持仅限于一个比较值: 'IN', 'NOT IN', 'BETWEEN', or 'NOT BETWEEN')

'type' => 'CHAR', //(字符串) -自定义字段类型,可用的值有:'NUMERIC', 'BINARY', 'CHAR', 'DATE', 'DATETIME', 'DECIMAL', 'SIGNED', 'TIME', 'UNSIGNED',默认为 'CHAR'

'compare' => '=' //(字符串) - 测试的操作,可用的值有: '=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN'. 默认为:'='

),

array(

'key' => 'price',

'value' => array( 1,200 ),

'compare' => 'NOT LIKE'

)

/

权限参数 - 显示已发布文章,如果用户有得当的权限,同样现实私有文章:

/

'perm' => 'readable' //(字符串) 可用的值有:'readable', 'editable' (可能还有其他可用的值我没有测试)

/

与缓存干系的参数

/

'no_found_rows' => false, //(布尔值) 默认为假,为了分页,WordPress 在大多数查询中利用 SQL_CALC_FOUND_ROWS 查询, 纵然你不须要分页,通过设置这个参数为真,我们见告明晰WordPress不要查询数据总行数,从而降落数据库负载,如果设置了这个参数为真,分页将不事情,更多信息请参考:http://flavio.tordini.org/speed-up-wordpress-get_posts-and-query_posts-functions

'cache_results' => true, //(布尔值) 默认为真

'update_post_term_cache' => true, //(布尔值) 默认为真

'update_post_meta_cache' => true, //(布尔值) 默认为真

//把稳:缓存是个好东西,常日不建议设为假,更多信息请参考:http://codex.wordpresorg/Class_Reference/WP_Query#Permission_Parameters

/

搜索参数

/

's' => $s, //(字符串) - 通报搜索变量到搜索功能,更多信息请参考: http://www.wprecipes.com/how-to-display-the-number-of-results-in-wordpress-search

'exact' => true //(布尔值) - 只匹配完全的titles/posts的旗子暗记 - 默认值为假,更多信息请参考:https://gist.github.com/2023628#gistcomment-285118

'sentence' => true //(布尔值) - 进行短语搜索的旗子暗记-默认值为假,更多信息请参考:https://gist.github.com/2023628#gistcomment-285118

/

文章字段参数

/

//关于文章字段参数信息,请参考http://codex.wordpress.org/Class_Reference/WP_Query#Post_Field_Parameters

/

过滤器

/

//关于过滤器的更多信息,请参考:http://codex.wordpress.org/Class_Reference/WP_Query#Filters

);

$the_query = new WP_Query( $args );

// 循环开始

if ( $the_query->have_posts() ) :

while ( $the_query->have_posts() ) : $the_query->the_post();

// 输出内容

endwhile;

endif;

// 重置文章数据

wp_reset_postdata();

?>

标签:

相关文章

大金空调代码J2高端空调技术的创新与突破

空调行业在技术创新方面取得了显著的成果。大金空调作为全球知名的品牌,其产品以高品质、高性能著称。本文将围绕大金空调代码J2展开,探...

PHP教程 2025-02-18 阅读0 评论0

基于QCC代码的智能交通系统优化步骤研究

城市交通拥堵问题日益严重,严重影响了人们的出行效率和生活质量。为了解决这一问题,我国政府和企业纷纷投入大量资源进行智能交通系统的研...

PHP教程 2025-02-18 阅读0 评论0

地球科学部守护地球家园的坚实后盾

地球科学部,作为我国地球科学研究的重要机构,肩负着探索地球奥秘、服务国家战略、保护地球家园的重任。在地球科学部的带领下,我国地球科...

PHP教程 2025-02-18 阅读0 评论0

在线客服漂浮代码技术革新下的服务新体验

我国各行各业都在积极拥抱数字化、智能化浪潮。在线客服作为企业服务的重要组成部分,其功能不断完善,用户体验也在不断提升。漂浮代码作为...

PHP教程 2025-02-18 阅读0 评论0