WordPress 分页链接函数 paginate_links

在放大镜下,你可以看到每一片雪花都是一幅幅精美的图案:有的是晶莹的薄片,有的像白亮的银针,有的像一把张开的小扇,有的像夜空的星星……

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

paginate_links 用法

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

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

paginate_links 默认参数

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

<?php $args = array( 'base' => '%_%', 'format' => '?page=%#%', 'total' => 1, 'current' => 0, 'show_all' => False, 'end_size' => 1, 'mid_size' => 2, 'prev_next' => True, 'prev_text' => __('« Previous'), 'next_text' => __('Next »'), 'type' => 'plain', 'add_args' => False, 'add_fragment' => '', 'before_page_number' => '', 'after_page_number' => '' ); ?>

  • base - 用来参考的网址
  • format - 用于URL的分页结构,例如: /page/3
  • total - 总页数
  • current - 当前页码
  • show_all - 默认值是false,如果设置为true,那么将显示所有的可用页码
  • end_size - 页面显示在列表的末尾号
  • mid_size - 多少个数字到当前页面的两侧,但不包括当前页面
  • prev_next - 布尔值,是否包含上一页和下一页的链接
  • prev_text - 前一页的文字。只有当'prev_next'参数设置为true
  • next_text - 下一页的文字。只有当'prev_next'参数设置为true
  • type - 定义该函数返回什么,plain, array 或 list
  • add_args - 添加查询字符串参数到链接
  • add_fragment - 添加文本追加到每个链接
  • before_page_number - 在页码前显示的字符串
  • after_page_number - 在页码后显示的字符串

paginate_links 示例

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function wpdx_paging_nav(){
	global $wp_query;

	$big = 999999999; // 需要一个不太可能的整数

	$pagination_links = paginate_links( array(
		'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
		'format' => '?paged=%#%',
		'current' => max( 1, get_query_var('paged') ),
		'total' => $wp_query->max_num_pages
	) );

echo $pagination_links;
}

function wpdx_paging_nav(){ global $wp_query; $big = 999999999; // 需要一个不太可能的整数 $pagination_links = paginate_links( array( 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'format' => '?paged=%#%', 'current' => max( 1, get_query_var('paged') ), 'total' => $wp_query->max_num_pages ) ); echo $pagination_links; }

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

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

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

更多例子和详细介绍,请访问官方文档:http://codex.wordpress.org/Function_Reference/paginate_links

到此这篇关于WordPress 分页链接函数 paginate_links就介绍到这了。如果你吃一堑还不长一智的话,那么让你失望的人又怎么可能让你失望一次呢?有的人不会愧疚的,毕竟满口的谎言,不需要成本?远离那个不断用负能量消耗你的人。记住。你不是佛,渡不了,所有的魔。更多相关WordPress 分页链接函数 paginate_links内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
WordPress站点Gravatar头像前后台不显示的如何解决办法

WordPress做公司官网好吗?会不会显得档次很低?

WordPress主题需要支持https吗?WordPress站点如何如何实现https?

WordPress站点的页面/标签/分类URL地址如何添加.html?

WordPress站点更换了域名后数据库应该如何操作替换新旧域名?