加载中...

paginate_links


如果你是 WordPress主题开发者,你肯定需要实现存档分页导航功能,虽然目前有不少方法,但是倡萌还是推荐尽量使用官方函数来实现。今天介绍的函数 paginate_links,可以用来检索归档后的页面分页链接。其实,该函数可以被用在任何地方实现分页链接(例如:WordPress 为自定义表格/列表添加分页导航功能)。

paginate_links 用法

  1. <?php echo paginate_links( $args ); ?>

paginate_links 默认参数

  1. <?php $args = array(
  2. 'base'         => '%_%',
  3. 'format'       => '?page=%#%',
  4. 'total'        => 1,
  5. 'current'      => 0,
  6. 'show_all'     => False,
  7. 'end_size'     => 1,
  8. 'mid_size'     => 2,
  9. 'prev_next'    => True,
  10. 'prev_text'    => __('« Previous'),
  11. 'next_text'    => __('Next »'),
  12. 'type'         => 'plain',
  13. 'add_args'     => False,
  14. 'add_fragment' => '',
  15. 'before_page_number' => '',
  16. 'after_page_number' => ''
  17. ); ?>
  1. base - 用来参考的网址

  2. format - 用于URL的分页结构,例如: /page/3

  3. total - 总页数

  4. current - 当前页码

  5. show_all - 默认值是false,如果设置为true,那么将显示所有的可用页码

  6. end_size - 页面显示在列表的末尾号

  7. mid_size - 多少个数字到当前页面的两侧,但不包括当前页面

  8. prev_next - 布尔值,是否包含上一页和下一页的链接

  9. prev_text - 前一页的文字。只有当'prev_next'参数设置为true

  10. next_text - 下一页的文字。只有当'prev_next'参数设置为true

  11. type - 定义该函数返回什么,plain, array 或 list

  12. add_args - 添加查询字符串参数到链接

  13. add_fragment - 添加文本追加到每个链接

  14. before_page_number - 在页码前显示的字符串

  15. after_page_number - 在页码后显示的字符串

  16. paginate_links 示例


这里只简单举一个使用例子,将下面的函数添加到当前主题的 functions.php 文件:

  1. function wpdx_paging_nav(){
  2. global $wp_query;
  3.  
  4. $big = 999999999; // 需要一个不太可能的整数
  5.  
  6. $pagination_links = paginate_links( array(
  7. 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
  8. 'format' => '?paged=%#%',
  9. 'current' => max( 1, get_query_var('paged') ),
  10. 'total' => $wp_query->max_num_pages
  11. ) );
  12.  
  13. echo $pagination_links;
  14. }

然后在主题需要显示分页链接的地方使用下面的函数调用即可:

  1. <?php if(function_exists('wpdx_paging_nav')) wpdx_paging_nav(); ?>



还没有评论.