WP-PageNavi分页插件的使用

来源:互联网 发布:摄像机采集软件 编辑:程序博客网 时间:2024/06/03 21:30

WordPress默认自带的分页功能过于简单,于是准备使用第三方的分布插件WP-PageNavi。
按照说明文档,应该把index.php中的下面代码

<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">←</span> Older posts', 'twentyten' ) ); ?></div><div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">→</span>', 'twentyten' ) ); ?></div>


替换为

<?php wp_pagenavi(); ?>


但问题来了,我找遍该文件,根本没有上述代码(可能和版本有关系)。

于是只好自己想办法,然后注意到index.php中分布功能使用下面代码完成:

<?php twentyeleven_content_nav( 'nav-above' ); ?><?php twentyeleven_content_nav( 'nav-below' ); ?>


于是,尝试在上述代码位置追加 wp_pagenavi() 调用,测试OK。

于是查找主题 Twenty Eleven 对应该代码部分的调用,一共涉及以下几个文件。

authoor.phpcategory.phpsearch.phparchive.phptag.phpfunction.phpindex.php


再次注意到,function.php 包含了该方法的定义,于是不用每个文件都修改一遍,直接修改function.php中的定义,替换下面代码

<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">←</span> Older posts', 'twentyeleven' ) ); ?></div><div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">→</span>', 'twentyeleven' ) ); ?></div>

<?php wp_pagenavi(); ?>


修改后函数定义如下:

function twentyeleven_content_nav( $nav_id ) { global $wp_query; if ( $wp_query->max_num_pages > 1 ) : ?>  <nav id="<?php echo $nav_id; ?>">   <h3 class="assistive-text"><?php _e( 'Post navigation', 'twentyeleven' ); ?></h3>   <?php wp_pagenavi(); ?>  </nav><!-- #nav-above --> <?php endif;}


测试OK,能够正常实现分页功能。