WordPress中的query_posts()
函数用于更改主查询(Main Query)的参数,以便在页面上显示不同的内容。尽管它可以实现很多不同的目标,但是它通常不建议在主题或插件中频繁使用,因为它可能会影响其他功能和性能。以下是一些query_posts()
函数的常见用法示例:
按照特定的分类显示文章:
query_posts('cat=5');
按照特定标签显示文章:
query_posts('tag=example');
按照自定义字段值排序:
query_posts('meta_key=price&orderby=meta_value_num');
限制显示的文章数量:
query_posts('posts_per_page=10');
分页显示结果:
query_posts('paged=' . get_query_var('paged'));
排除特定分类:
query_posts('cat=5');
按照作者显示文章:
query_posts('author=1');
按照日期显示文章:
query_posts('year=2023&monthnum=9');
组合多个参数:
query_posts('cat=5&tag=example&posts_per_page=10');
请注意,使用query_posts()
函数会更改主查询,并且可能与其他插件或主题功能冲突。在现代WordPress主题和插件中,通常建议使用WP_Query
或pre_get_posts
钩子来更改查询参数,以避免潜在的问题。
另外,务必小心不要在主题模板文件中多次使用query_posts()
,因为这可能导致不可预测的结果。最好将其用于需要定制查询的地方,并在使用后恢复原始查询(通过wp_reset_query()
或wp_reset_postdata()
)以避免问题。