Wordpress php 分页代码
author:一佰互联 2019-05-01   click:162

效果:

将下面的函数放到你的主题的 functions.php 文件中:
复制代码 代码如下:
function theme_echo_pagenavi(){
global $request, $posts_per_page, $wpdb, $paged;
$maxButtonCount = 9; //显示的最多链接数目
if (!is_single()) {
if(!is_category()) {
preg_match("#FROMs(.*)sORDER BY#siU", $request, $matches);
} else {
preg_match("#FROMs(.*)sGROUP BY#siU", $request, $matches);
}
$fromwhere = $matches[1];
$numposts = $wpdb->get_var("SELECT COUNT(DISTINCT ID) FROM $fromwhere");
$max_page = ceil($numposts /$posts_per_page);
if(empty($paged)) {
$paged = 1;
}
$start = max(1, $paged - intval($maxButtonCount/2));
$end = min($start + $maxButtonCount - 1, $max_page);
$start = max(1, $end - $maxButtonCount + 1);
if($paged == 1){
echo "<span>首页</span>";
echo "<span>上一页</span>";
}else{
echo "<a href="".get_pagenum_link().""><span>首页</span></a>";
echo "<a href="".get_pagenum_link($paged-1).""><span>上一页</span></a>";
}
for($i=$start; $i<=$end; $i++){
if($i == $paged) {
echo "<span class="page_num on">[$i]</span>";
} else {
echo "<a href="".get_pagenum_link($i).""><span class="page_num">[".$i."]</span></a>";
}
}
if($paged == $max_page){
echo "<span>下一页</span>";
echo "<span>末页</span> ";
}else{
echo "<a href="".get_pagenum_link($paged+1).""><span>下一页</span></a>";
echo "<a href="".get_pagenum_link($max_page).""><span>末页</span></a>";
}
echo " 共{$numposts}条记录, {$max_page}页.";
}
}

在主题的 index.php 文件中这样引用:
复制代码 代码如下:
<?php theme_echo_pagenavi(); ?>