上次转载并自己加以折腾写了《willin 出品的 Mini Pagenavi 修改版》后,本来那时就想加入“上一页”、“下一页”的链接,但当时突然又偷懒了。
今天 A-shun 突然猛呼唤我,我以为他要给我钱,原来不是,是叫我帮忙为 Mini Pagenavi 加上“上一页”、“下一页”的链接,进一步完善并向页面导航插件靠齐。他的目的不是给我钱,是因为浏览器(Opera)有超级快进、预读、自动拼接页面的功能,所以那个链接很有必要。
于是乎,在本地稍加修改测试就搞定了,改了下函数,下面贴出,需要的朋友折腾玩玩吧。
1. 把下面的代码都扔到主题的 functions.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 ----------------------------------------
2. 在 index.php/home.php/archive.php等页面调用
<?php if (function_exists('pagenavi')) { pagenavi(); } ?>
3. 我的导航样式css参考
.page-numbers{line-height:16px;margin:0;padding:3px 5px;text-decoration:none;background:#fff;border-top:2px solid #fff;} .page-numbers:hover{border-top:2px solid #ff00a4;} .current,.current:hover{color:#fff;background:#45b9f6;border-top:2px solid #45b9f6;} .current:hover{border-top:2px solid #00679d;}
效果看我博客首页底部的页面导航吧。
写完,现在葡萄牙:朝鲜的比分为 7:0,葡萄牙赢定了——废话,C罗终于进球了,而且这个进球很有趣。
zww
赏
oooo
or
- 本文标题:为 Mini Pagenavi 添加“上一页”、“下一页”链接
- 本文链接:https://zww.me/archives/25180
- 发布时间:2010年06月21日 21:27
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
[...] 参考《willin 出品的 Mini Pagenavi 修改版》、《为 Mini Pagenavi 添加“上一页”、“下一页”链接》、《干掉WP-PageNavi – [...]
[...] 参考《willin 出品的 Mini Pagenavi 修改版》、《为 Mini Pagenavi 添加“上一页”、“下一页”链接》、《干掉WP-PageNavi – [...]
怎么能输入数值跳转页面
@疾风
用个input框吧
这个CSS的样式在zbench中不起作用?请问如何修改?多谢。
@loren
zBench的话直接装个插件吧:wp-pagenavi