wordpress 分页代码

PHP代码

function pagination($query_string){   
 global $posts_per_page, $paged;   
 $my_query = new WP_Query($query_string ."&posts_per_page=-1");   
 $total_posts = $my_query->post_count;   
 if(empty($paged))$paged = 1;   
 $prev = $paged - 1;   
 $next = $paged + 1;   
 $range = 3; // only edit this if you want to show more page-links   
 $showitems = ($range * 2)+1;   
  
 $pages = ceil($total_posts/$posts_per_page);   
 if(1 != $pages){   
  echo "<div class='pagination'>";   
  echo "共 ".$pages." 页 ";
  echo ($paged > ($range+1) && $showitems < $pages)? "<a href='".get_pagenum_link(1)."'>首页</a>":"";   
  echo ($paged > 1 && $showitems < $pages)? "<a href='".get_pagenum_link($prev)."'>上一页</a>":""; 
  echo ($paged > ($range+1) && $pages>$showitems)? "... " : "";

  if($paged>=$pages-$range+1 && $pages>$showitems){
   for($i=$pages-$showitems+1; $i<=$paged-$range-1; $i++){
    echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";   
   }
  }

  for ($i=1; $i <= $pages; $i++){   
   if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems )){   
   echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";   
   }   
  }   

  if($paged<=$range && $pages>$showitems){
   for($i=$paged+$range+1; $i<=$showitems; $i++){
    echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";   
   }
  }

  echo ($paged > $pages-$range-1) ? "" : "... "; 
  echo ($paged < $pages && $showitems < $pages) ? "<a href='".get_pagenum_link($next)."'>下一页</a>" :"";
  echo ($paged < ($pages-$range) &&  $paged+$range-1 < $pages && $showitems < $pages) ? "<a href='".get_pagenum_link($pages)."'>尾页</a>":"";   
  echo "</div>\n";   
 }   
}

CSS代码

.pagination{ line-height:23px; }
.pagination span, .pagination a{ font-size:12px; margin: 2px 6px 2px 0; background:#fff; border:1px solid #e5e5e5; color:#787878; padding:2px 5px 2px 5px; text-decoration:none; }
.pagination a:hover{ background: #8391A7; border:1px solid #fff; color:#fff; }
.pagination .current{ background: #fff; border:1px solid #8d8d8d; color:#393939; font-size:12px; padding:2px 5px 2px 5px; }

主题调用

<?php pagination($query_string); ?>

十一月 19, 2013 | In: 网页

Comment Form

You must be logged in to post a comment.