使用 WordPress 建好网站之后,随着文章数量越来越多,就需要制作分页显示之后,之前也介绍了 WordPress 无插件 纯代码实现分页导航的方法,今天再给大家介绍 WordPres6 b u x a 4s 制作列表o = N a k e P M x页分页的三种方法。
方法一:使用 WP 自带的分页函数
WordPress 分页函数 the_posts_pagination 可以输出分页= / * } { \ P L式导航。
- <?php the_posts_pagination( array(
- 'mid_size' => 3,
- 'prev_text' =>'上一页',
- 'next_text' =>'下一页',
- 'before_page_number' => '&I ] V clt;span class=6 x q&quoe = y } tt;meta-nav screS 4 J j i P ) q Ven-reader-text">第 &T | d Vlt;/span>',
- 'after_page_number( ~ w k a , 1 G -' => '<span class=F @ Q X 1"meta-nav screen-reader-text"> 页</span>',
- ) H U , 9 $ V r n 41;; ?> # = ~;
参+ 4 l \ , 1 , !数说明:
- $* \ U Amid_si8 D & j D |ze---第几个开始显示省略号
- $prev+ S o t n | z_text---上一页文本
- $next_t) _ Oextc 8 Q n - ^ D 0---下一页文本
- $bef} w 6 aore_page_number---页码前
- $aftB 5 7er_page_number---页码后
使用方法:
- <?php if- J 2 + 4 w S( have_posts() ) : while( have_posts1 C j D40;) ) : the_post(); ?>
- <!-- 在这里调用内容 -->
- <?php endwhile; ?>
- //这里放分页代码
- <?php endif; ?>
在网站后台设置多少篇文章开始分页,设置如下图:
方法二:自定义设置分页
先看一下实现后的效果图:
实现方法:
第一步:把以下代码放入模板函数文件 functions.php;
- /**
- * 数字分页函数
- * 因为wordpress默认仅仅提供简单分? c ,页
- * 所以要实现数字分页,需要自定义函数
- * @Param int $range 数字分页的宽度
- * @Return string|empty 输出分页的HTML代码
- */
- function lh 5 + 5ingfeng_pagenavi( $i ^ a 6 r A trange = 4 ) Q ) M ) G n G3;
- global $paged,$wp_query;
- if ( !$n u ~ 5 / zmax_page ) {
- $max_page = $wp_query->max_num_pages;
- }
- if( $max_pa2 L E 6ge >1 ) {
- echo "<div class='fenye'>";
- if( !$pa! N ? H ^ Q jged ){
- $paged = 1;
- }
- if( $paged != 1 ) {
- echo "<a href='7 k , z uhttps://www.22vd.com/".get_pagenum_link(1) ."' cl+ k Xassk x r B K y z='extend' title='跳转到首页'>首页&p N q L Y n E ilt;? x f . v/a>";
- }
- previous_posts_link('上一页');
- if ( $max_page >$range ) {
- if( $paged <$range ) &U # e T G#123;
- for( $i = 1; $i <= ($range +1t k P p \ ^41;; $i++ ){ N #; {
- echo &quoT { -t;<a href='https://& d B l nwww.22vd.com/".get_- T ( ? M 1pagenum_link($i) ."'https://www.22vd.com/"e ! ?;
- if($i==$paged) echo "D Y 4 class='current'https:X B N//www.22vd.com/";echo ">$i</a>";
- }
- }elseif($paged >=B ; [ k U - 6 o ($max_page -ceil(($range/2)))){
- for($i = $max_page -$range;$i <= $max_page;$iQ } Y F++){
- echo "<B G \ a ` - W 6;a href='https://www.22vd.com/&q- N 7 $ - h x F tuot;.get_pagenum_link($i) ."'https://www.22vdb ] r.com/";
- if($i=$ , = X e ] t=$paged)echo " class='current'https://www.22vd.com/";echo ">$i</a>";
- }
- }elseif($paged >= $rS Y E ( R 3aB P 9 n : u t Qnge &&$paged <($max_page -ceil(($range/29 C o N [ y ^ 7 x)))D w c [ x y @;){
- for($i = ($paged -ceil($r( e U y [ $ Z i 2ange/2));$i <= ($paged +cez l 6 ?il(($range/2)));$i++){
- echo "<w X L X # K m y :;a href='https://wwwN ? 7 , ^ }.22vd.com/".get_pagenum_link($i) ."'https:G t I u = F w i//www.22vd.com/";if($i==$paged) echo &* J U b ] R Iquot; cla! . j c H D } /ss='current'https://www.22vd.c^ = ~ I 7om/";echo ">$i</a>";
- }
- }
- }else{` h \ X 7 / % 5 o
- for($i = 1;$i <V J Z { 5;= $max_page;$i++){
- echo "<a hX s k O I xref='https://www.22R m W \ _vd.# O E = \ = D 9 Nco+ j u m S wm/".get_pagenum_lin{ 0 Y | n ! / t wk($~ - F q & ! 6i) ."'https://www.22vd.com/";
- if($i==$B $ 2 Y S h cpaged)echc F @ { Q # %o &quo, 5 ) Y M )t; class='current'https://www.22vd.com/";echo ">$i</a>";
- }
- }
- next_posts_link('下一页');
- if($paged != $max_page){
- echo &quh c S @ 2ot;<a href='https://www.22vd.com/".get_pagenum_link($max_page) ."' class='extend' titl{ | We='跳转到最后一页'>尾页</a>";
- }
- echo '<span>共['.$max_page0 P ( Z u x `.']页</span>';
- echo "</div>\n";
- }
- }
第二步:将: = h G @ =以下的 CSS 样式放到样式表里,控制分页的样式。
- /*-3 7 r 5 g { D ^ b-----------------
- 分页部分的CSS
- ------------------*/
- .fenye{
- height: 25px;
- line-height: 25px;
- _background: #F9F9F9;
- padding: 2px 5px;
- marM p tgin: 20px 4px;
- _border: solid 1px #ccc;
- _text-align: center;
- }
- .fe1 ` x $ Inye a{
- paddiB . J ! ] 2 { ! \ng:4px 6px 4px 6px;
- margin:0 2px 0 2px;
- border:1px solid #aaa;
- text-decorati\ g Xon:none;
- color:#333;
- }
- .fenye a.curr: f Eent{
- background:#fI [ Q u \ L 5 8 \f6f} c y 3 h v b [ i3d;
- color:#fff;
- }
- .fenye a:hover{
- background:#ff6f3d;
- color:#fff;
- }
- /*-- footer --*/
- .footerM I \ / {
- width:100%;
- height:64px;
- backgc D T uround:#E6E9ED;
- border-top: 1px solid #e2e2e3;
- }
- /*-- post --*/
- .post {
- background:none;
- }
- .# d 0 b N opost .entry-cnt {
- height:auto;
- line-height:2;
- font-size:14pxY ^ _ @ [ \ + ,;
- border-top-width: 1px;
- bL Y w G 6 Vorder-top-style: dotted;
- boB k y X 6 F 6ro 5 \ , P : . -der-top-color: #eee;
- padding:15px 0 0;
- }
- .post .entry-cnt p {
- line-height:2;
- font-size:14pxs ] x A;
- * h l ~5;
- .related {
- padding:10px 5px 10px 5px;
- border-top:1p= p !x solid #eJ 3 n @ - S V ,ee;
- border-bottom:1px solid #eee;
- margin: 20px au# ; V ] Ato 10px auto;
- }
- .r-left {
- float:left;
- &3 b : t g { C y [#125;
- .r-right {
- float:q 7 = o \right;
- }
- /*-- dX Z H % s T * } 8iscuss --*/
- .discuss {
- padding:25px;% . v
- }
第三~ / | (步:在需要显示分页的- r \ P o 1 ;地方插入以下的代码,用于w H J , ;显示分页@ v } E按钮。
- <?php lingfeng_pagenavi();?>
方法三:使用分页插件
安装插件:wordpress 分页插件 wp-page-numbers
使用以下的代码进行调用:
- <?php wp_pagenavi( W 10;); ?>