分页查询是很常见的需求,WordPress必然也提供了相应的方法,只是提供的方法有点“多”。
一般的使用 WP_Query 的 offset + posts_per_page 两个参数配合使用即可。offset指开始查询的偏移量,posts_per_page指每页的文章数量。
代码示例:
$query = new WP_Query( array( 'posts_per_page' => 5, 'offset' => 3 ) );
如果不想分页,想直接查询所有的文章,可以使用 nopaging = true,或者 posts_per_page=-1。
代码示例:
$query = new WP_Query( array( 'nopaging' => true ) );
$query = new WP_Query( array( 'posts_per_page' => -1 ) );
此外,在WordPress主题开发中,可以使用 paged 或 page 参数,在主题模板中,一些链接会自动附带paged或page参数,可以直接利用,就不用自己处理链接了。
代码示例:
$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;
$query = new WP_Query( array( 'paged' => $paged ) );
需要注意的是,在一些文章页,使用 <!--nextpage--> 生成的“分页”链接中,也有 page 参数,这种情景需要和文章列表的 page 参数加以区分。
WP_Query 的基础用法可以参考文章:WP_Query 的基础用法简介
-
WordPress函数:is_main_site 是否是主站点WordPress函数:is_main_site 是否是主站点
-
WordPress函数:is_child_theme 是否正在使用子主题WordPress函数:is_child_theme 是否正在使用子主题
-
WordPress函数:current_theme_supports 检查主题对给定功能的支持WordPress函数:current_theme_supports 检查主题对给定功能的支持
-
WordPress函数:is_customize_preview 是否在自定义设置程序中预览网站WordPress函数:is_customize_preview 是否在自定义设置程序中预览网站
-
WordPress函数:wp_get_attachment_image_srcset 响应式图片再 WordPress 中如何设置响应式图片
-
WordPress函数:set_transient 设置临时值WordPress函数:set_transient 设置临时值
暂无评论,抢个沙发...