//分页函数function pages($query_string){
global $posts_per_page, $paged; //全局变量
$my_query = new WP_Query($query_string .34;&posts_per_page=-1"); //创建查询工具
$total_posts = $my_query->post_count; //通过查询工具获取文章总数
if(empty($paged)) $paged = 1; //当前页码数,如是$paged为空,就让
$paged=1$prev = $paged - 1; //上一页变量
$next = $paged + 1; //下一页变量
$range = 4; //
$showitems = ($range 2)+1; //显示多少个分页页码按钮
$pages = ceil($total_posts/$posts_per_page); //获取总页数
if(1 != $pages){
echo "<div class='pagination'>";
echo ($paged > 2 && $paged+$range+1 > $pages && $showitems < $pages)? "<a href='".get_pagenum_link(1)."'>最前</a>":"";
echo ($paged > 1 && $showitems < $pages)? "<a href='".get_pagenum_link($prev)."'>上一页</a>":"";
for ($i=1; $i <= $pages; $i++){
if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems )){
echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";
}
}
echo ($paged < $pages && $showitems < $pages) ? "<a href='".get_pagenum_link($next)."'>下一页</a>" :"";
echo ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) ? "<a href='".get_pagenum_link($pages)."'>末了</a>":"";echo "</div>\n";
}
}
然后,在wordpress网站前台模板的文章列表的代码下方调用这个分页函数,代码如下:
<?php pages($query_string); //列表分页 ?>
然后,我们就可以在wordpress网站的文章列表下方看到分页按钮。如果想要样式好看一点,可以对分页按钮添加CSS样式,来进行美化一下。
方法二:利用wordpress自带的分页函数。为了更方便wordpress网站模板开拓者开拓模板主题,wordpress从4.0版本开始,就供应了一个分页函数the_posts_pagination(),通过这个函数,我们同样可能实现wordpress网站的文章列表的分页效果。代码如下:
the_posts_pagination( array('mid_size' => 3, //当前页码数的 两边 显示几个页码。'prev_text' =>'<', //上一页'next_text' =>'>', //下一南) );
这个函数跟wordpress其wp_list_pages()等函数类似,有一个参数,这个参数可是一个数组类型(如上面的代码,参数便是数组类型),也可以是一个字符串类型,上面的的代码的参数修正成字符串类型后,如下:
the_posts_pagination("mid_size=3&prev_text=<&next_text=>");
是利用字符串类型,还是利用数组类型,紧张根据开拓者的个人爱好,我个人还是比较喜好用数组类型,看起来比较清楚。
在wordpress网站模板开拓中,利用上面任何一种办法来添加文章列表的分页效果都可以,不过,我个人还是建议利用wordpress自带的函数the_posts_pagination(),对开拓更省事,效率更高,而且是wordpress自己的函数,后期都不须要掩护。如果想让分页按钮布局更加个性化,可以考第一种办法。
如果还有什么不太明白的,或者你想理解什么,可以不才面评论中给我留言。