
虽然网上有不少wordpress插件能达到翻页的一个目的,但是尽可能少用插件是博主们必须要知道的。
下面我贴一段在网上找到的,分页实现的一个PHP程序。针对wordpress。
具体实现方法:
首先将下面一段函数代码添加到主题的functions.php模板文件中:
function kriesi_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 = 2; // 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 "</pre> <div class="pagination">"; echo ($paged > 2 && $paged+$range+1 > $pages && $showitems < $pages)? "<a href="".get_pagenum_link(1)."">最前</a>":""; echo ($paged > 1 && $showitems < $pages)? "<a href="".get_pagenum_link($prev)."">上一页</a>":""; for ($i=1; $i = $paged+$range+1 || $i echo ($paged == $i)? "<span class="current">".$i."</span>":"<a class="inactive" href="".get_pagenum_link($i)."">".$i."</a>"; } } echo ($paged < $pages && $showitems < $pages) ? "<a href="".get_pagenum_link($next)."">下一页</a>" :""; echo ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) ? "<a href="".get_pagenum_link($pages)."">最后</a>":""; echo "</div> <pre>\n"; } }