1

WordPress修改自带older posts分页功能

Posted by 撒得一地 on 2015年10月22日 in wordpress笔记

WordPress自带的分页功能是左侧是older posts,右侧是Newer posts的分页功能。这样显示与传统的显示页数有一定的区别,而且外观显示不是很漂亮。下面主要介绍显示传统的页数的方法来实现分页。WordPress提供了很多插件可以实现分页,插件法一般我们不提倡,下面介绍用代码的方法实现。

WordPress 现在已经自己支持 Pagenavi 功能了,首先要在functions.php 文件中加入以下代码:

/*@分页功能*/
function native_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("page","%#%"),

"format" => "",

"total" => $wp_query->max_num_pages,

"current" => $current,

"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"));

echo paginate_links($pagination);

}

参数分析

'base' 参数用来提供创建页面链接的参考链接

'format' 参数是用来替换成页码

'total' 参数是设置页面的总数

'current' 参数用于设置当前的页码,它们都必须是整数。这些参数我们在使用的时候必须提供的。

'show_all'参数设置为 true 就会显示所有的页面,默认情况它是被设置为 false 的

通过 'end_size' 和 'mid_size' 这两个参数来控制页码显示的规则。'end_size' 参数是用来控制在开始和结束的两端显示多少个数字,默认是 1 。'mid_size' 参数是用来显示多少个数字显示在当前页数字的两边,并且不包括当前页。

'prev_next' 这个参数是用来设置是否显示上一页和下一页的页码链接,默认是 true,然后我们可以通过 'prev_text' 和 'next_text' 这两个参数来控制上一页和下一页的文本。

调用
在需要调用的位置插入以下代码即可实现 Pagenavi 的功能。

<div class="pagenav"><?php native_pagenavi();?></div>

上面那段代码替换掉你旧有分页的代码。

更多可以参考:

http://www.sjyhome.com/wordpress/pagenavi.html

标签:

上一篇:

下一篇:

相关推荐

1 Comment

Comments are closed. Would you like to contact the author directly?
网站地图|XML地图

Copyright © 2015-2024 技术拉近你我! All rights reserved.
闽ICP备15015576号-1 版权所有©psz.