代码实现wordpress分页导航

插件毕竟会降低速度,可以用代码实现一些功能,如分页导航:

1.主题functions.php添加下面代码:

function par_pagenavi($range = 5){
	global $paged, $wp_query;
	if ( !$max_page ) {$max_page = $wp_query->max_num_pages;}
	if($max_page > 1){if(!$paged){$paged = 1;}
	if($paged != 1){echo "<a href='" . get_pagenum_link(1) . "' class='extend' title='跳转到首页'> 返回首页 </a>";}
	previous_posts_link(' 上一页 ');
    if($max_page > $range){
		if($paged < $range){for($i = 1; $i <= ($range + 1); $i++){echo "<a href='" . get_pagenum_link($i) ."'";
		if($i==$paged)echo " class='current'";echo ">$i</a>";}}
    elseif($paged >= ($max_page - ceil(($range/2)))){
		for($i = $max_page - $range; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'";
		if($i==$paged)echo " class='current'";echo ">$i</a>";}}
	elseif($paged >= $range && $paged < ($max_page - ceil(($range/2)))){
		for($i = ($paged - ceil($range/2)); $i <= ($paged + ceil(($range/2))); $i++){echo "<a href='" . get_pagenum_link($i) ."'";if($i==$paged) echo " class='current'";echo ">$i</a>";}}}
    else{for($i = 1; $i <= $max_page; $i++){echo "<a href='" . get_pagenum_link($i) ."'";
    if($i==$paged)echo " class='current'";echo ">$i</a>";}}
	next_posts_link(' 下一页 ');
    if($paged != $max_page){echo "<a href='" . get_pagenum_link($max_page) . "' class='extend' title='跳转到最后一页'> 最后一页 </a>";}}
}

 

2.主题style.css添加以下代码:

.page_navi{overflow:hidden;width:100%;text-align:center}
.page_navi a{height:36px;border:1px solid;-webkit-border-radius:12px;-moz-border-radius:12px;border-radius:12px;text-decoration:none;line-height:36px;margin:2px;padding:3px 8px}
.page_navi a:hover,.page_navi a.current{border:1px solid #DC8300;color:#DC8300;font-weight:bolder}

 

3.在需要显示的地方添加分页导航显示:

<div class="page_navi"><?php par_pagenavi(5); ?></div>

自己可以按需要修改。
来源:http://www.wpdaxue.com/wordpress-page-navigation.html
广而告之
企业建站、官网建设、独立站
真皮手套手套工厂批发零售直销

发表评论