欢迎光临
我们一直在努力

WordPress实现页码/分页/翻页效果

WordPress实现页码/分页/翻页效果。

WordPress 自带的默认分页函数如下:

<?php posts_nav_link(); ?>

 

使用此函数将实现 « Previous Page — Next Page » 效果,还可以设置成其他显示方式,详细参数的设置查看:官方文档。

可见自带的页码/分页/翻页效果是非常弱的,并不能实现我们想要的效果,下面我们就看下大兵博客是如何实现的页码效果的。

首先,将以下代码扔到 functions.php 模板中:

//页码/分页/翻页效果

functionwp_pagenavi() {

//先申明两个全局变量

global$wp_query,$wp_rewrite;

//判断当前页面

$wp_query->query_vars[‘paged’] > 1 ?$current=$wp_query->query_vars[‘paged’] :$current= 1;

$pagination=array(

‘base’=> @add_query_arg(‘paged’,’%#%’),

‘format’=>”,

‘total’=>$wp_query->max_num_pages,

‘current’=>$current,

‘show_all’=> false,

‘type’=>’plain’,

‘end_size’=>’1’,//在最后和最前至少显示多少个页码数,这里最后最前至少显示“1” 页的意思

‘mid_size’=>’4’,//在最后和最前之间至少显示多少个页码数

‘prev_text’=>’上一页’,

‘next_text’=>’下一页’

);

if($wp_rewrite->using_permalinks() )

$pagination[‘base’] = user_trailingslashit( trailingslashit( remove_query_arg(‘s’,get_pagenum_link(1) ) ) .’page/%#%/’,’paged’);

if( !empty($wp_query->query_vars[‘s’]) )

$pagination[‘add_args’] =array(‘s’=>get_query_var(‘s’));

echopaginate_links($pagination);

}

 

然后,设置好相关参数后,在需要显示页码/分页/翻页效果的模板中调用我们定义好的函数:

<!– 分页函数–><?php wp_pagenavi(); ?>

 

通常分页函数放到首页模板 index.php 和 存档模版 archive.php 中,当然也需要自己设置好CSS样式,才能达到自己的视觉体验。

最后,效果见大兵博客首页页码效果。

 

赞(0)
版权归原作者所有,如有侵权请告知。达维营-前端网 » WordPress实现页码/分页/翻页效果

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址