导语:当我们使用WP_Query查询后,如果结果只有一两条还可以直接显示,但如果超过几百条可能就需要对结果进行分页了。那么我们可以使用WordPress自带的函数paginate_links来进行分页,也可以自己写函数来进行分页。使用场景给客户做一个目的地的页面,上面显示每个省份的地图和城市,需要分页。代码示例请直接看…

导语:当我们使用WP_Query查询后,如果结果只有一两条还可以直接显示,但如果超过几百条可能就需要对结果进行分页了。那么我们可以使用WordPress自带的函数paginate_links来进行分页,也可以自己写函数来进行分页。

使用场景

给客户做一个目的地的页面,上面显示每个省份的地图和城市,需要分页。

代码示例

请直接看下面的代码示例,主要的关键点有当前页、总计页数。先要获取当前页,将它放到查询参数里面,执行WP_Query后,获取总页数。

在paginate_links函数中设置total和current的参数,这个就是对应前面的总页数和当前页。

具体的paginate_links说明请参见:https://developer.wordpress.org/reference/functions/paginate_links/

 $current_page = max(1, get_query_var('paged')); //当前第几页   //查询参数$args = array_filter(array('orderby' => 'title','order' => 'ASC','ignore_sticky_posts' =>  1 ,'posts_per_page' => 10,'paged' => $current_page, //当前页));   //开始查询$query = new WP_Query($args);$total_pages = $query->max_num_pages;  //总共多少页while ($query->have_posts()):$query->the_post();//自己输出代码endwhile;//输出分页echo paginate_links( array('prev_text'          => __( 'Previous page', 'YChinaTours' ),'next_text'          => __( 'Next page', 'YChinaTours' ),'screen_reader_text'  => null,'total' => $total_pages,  //总页数'current' => $current_page, //当前页数) )
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。