宝宝健康成长网首页刘易桉宝宝健康成长 林林微博 育儿护理知识 宝宝网址导航
当前位置: 首页 >> 宝宝建站 >> WordPress 分页导航非插件实现说明

WordPress 分页导航非插件实现说明

自打开始使用WordPress,就启用了lesterchan的wp-pagenavi插件,通过pagenavi插件,您可以方便的进行页面切换,而不只是上一页或下一页的浏览。对于文章比较丰富的blog来说,就更能体现页面导航的效果。不过,现在百奥博找到了一种不用插件实现分页导航效果的办法,特此将使用方法说明下。

以下代码来自宝岛台湾的Willin Kan,功能升级者是祖国花朵zwwooooo,呱唧呱唧~

直接上代码,将其复制粘贴到当前theme的functions.php,记得要放在<?php…?>中间噢!

/* Mini Pagenavi v1.0 by Willin Kan. Edit by zwwooooo */
if ( !function_exists(‘pagenavi’) ) {
function pagenavi( $p = 5 ) { // 取当前页前后各 2 页
if ( is_singular() ) return; // 文章与插页不用
global $wp_query, $paged;
$max_page = $wp_query->max_num_pages;
if ( $max_page == 1 ) return; // 只有一页不用
if ( empty( $paged ) ) $paged = 1;
echo ‘<span class=”pages”>Page: ‘ . $paged . ‘ of ‘ . $max_page . ‘ </span> ‘; // 显示页数
if ( $paged > 1 ) p_link( $paged – 1, ‘上一页’, ‘« Previous’ );/* 如果当前页大于1就显示上一页链接 */
if ( $paged > $p + 1 ) p_link( 1, ‘最前页’ );
if ( $paged > $p + 2 ) echo ‘… ‘;
for( $i = $paged – $p; $i <= $paged + $p; $i++ ) { // 中间页
if ( $i > 0 && $i <= $max_page ) $i == $paged ? print “<span class=’page-numbers current’>{$i}</span> ” : p_link( $i );
}
if ( $paged < $max_page – $p – 1 ) echo ‘… ‘;
if ( $paged < $max_page – $p ) p_link( $max_page, ‘最后页’ );
if ( $paged < $max_page ) p_link( $paged + 1,’下一页’, ‘Next »’ );/* 如果当前页不是最后一页显示下一页链接 */
}
function p_link( $i, $title = ”, $linktype = ” ) {
if ( $title == ” ) $title = “第 {$i} 页”;
if ( $linktype == ” ) { $linktext = $i; } else { $linktext = $linktype; }
echo “<a class=’page-numbers’ href=’”, esc_html( get_pagenum_link( $i ) ), “‘ title=’{$title}’>{$linktext}</a> “;
}
}
// — END —————————————-

然后,修改 index.php、archive.php等文件,在需要显示翻页导航的地方加入如下代码:

<div class=”pagenavi”><?php if (function_exists(‘pagenavi’))  : ?><?php pagenavi(); ?></div>

最后一步,美化导航栏,定义CSS。可参考我的样式:

#pagenavi{margin:5px 10px;}
.page-numbers{line-height:16px;margin:0;padding:1px 2px;text-decoration:none;border:1px solid #E6F7FF;color:#c60;}
.page-numbers:hover{background:#777e77; color:#bbc0bb;}
.current, .current:hover{color:#650;background:#E7F6FB;}

效果如图所示,与wp-pagenavi插件实现的几乎一样哈!

pagenavi

敬请留言当前共有 8 条评论

  1. 阿七 说道:

    这个很有用,博客留言板能用的到,mark之。

  2. zwwooooo 说道:

    willin V5啊,给我们带来这么多好代码

  3. andy 说道:

    我起来怎么不好使,主题是zww的,添加这段代码后,博客会会显示index.php第40行代码出错。

  4. 二手科学家 说道:

    这段代码添加到intex.php中时要针对主题有所修改。zww主题中添加时试试:< ?php if (function_exists('pagenavi')) { pagenavi(); } ?>

  5. 博主写的不错哈,继续加油,我订阅了你的博客。嘎嘎

  6. 亿品元素 说道:

    目前正用这种方法

  7. 郭碗瓢盆 说道:

    看过,用了,支持~

发表评论

^留言没头像?教你设置头像!
我的应用 Follow@cnbabyup 宝宝问答>  0-1岁  1-3岁  3-6岁 手气不错