首页 > 后端开发 > php教程 > WP_QUERY参数:状态,顺序和分页

WP_QUERY参数:状态,顺序和分页

尊渡假赌尊渡假赌尊渡假赌
发布: 2025-03-03 10:51:11
原创
361 人浏览过

WP_Query Arguments: Status, Order, and Pagination

本系列文章将深入探讨WP_Query 的精髓。在开始之前,让我们快速回顾一下WP_Query参数的继承机制。exclude_from_search设置为true 的文章也将被排除在搜索结果之外。

如果您未在查询参数中指定状态,WordPress 将默认使用继承状态。继承状态同时适用于附件和修订版。在编辑屏幕上上传的媒体文件会附加到当前正在编辑的文章中。因此,它们与父文章具有相同的状态是合理的。同样,文章的修订版也使用相同的机制。

排序参数

您可以使用以下两个参数进行排序:

  • orderby 参数:您可以根据一系列字段对文章进行排序:
    • relevance:按搜索词排序。优先考虑完整的句子匹配。之后,我们将继续关注标题中的所有搜索词、标题中的一些搜索词以及文章中的搜索词。
    • post_name__in:保留post_name__in参数中给定的文章slug顺序。
    • post_parent__in:保留post_parent__in参数中给定的父文章顺序。当您使用post_name__in并且ignore_sticky_posts设置为true时,orderby参数将被忽略。您还可以选择仅输出在分页页面中出现的页面。例如,如果您想显示上面示例中第三页上将显示的20篇文章,您可以使用以下代码:
$args = array(
    'posts_per_archive_page' => '20',
    'paged' => '3'
);
登录后复制

另一种查询相同文章的方法是使用offset参数:

$args = array(
    'posts_per_page' => '20',
    'offset' => '40'
);
登录后复制

这将跳过前40篇文章(这将出现在前两页存档页面中),并获取接下来的20篇文章(这将出现在第三页存档页面中)。WordPress 的魅力之一在于它经常为您提供多种实现目标的方法!

您还可以完全关闭分页功能,以确保所有文章都显示在同一页面上:

$args = array(
    'nopaging' => true
);
登录后复制

总结

WP_Query 类在确定要查询的文章数量、显示文章的顺序以及要显示的文章状态方面提供了极大的灵活性。

其中一些参数对于查询特定类型的文章至关重要(例如,附件的'post_status' => 'inherited'),而其他参数只是让您更好地控制查询的运行方式。

通过使用这些参数,您可以创建自定义查询,这些查询的功能远不止简单地输出最新的已发布文章。

此文章已更新,并包含来自 Nitish Kumar 的贡献。Nitish 是一位网络开发人员,拥有在各种平台上创建电子商务网站的经验。他利用空闲时间从事个人项目,使他的日常生活更轻松,或者与朋友一起进行漫长的傍晚散步。

以上是WP_QUERY参数:状态,顺序和分页的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板