我们在仿站或者创作WordPress主题的时候,有时候是需要设定页面的分页样式的。当然,对于我们常用主题开发可以预先找一些好看的分页样式保存以备用直接复制使用。这里我也看到这个网友分享的WordPress美观的分页样式。

这里附上代码:
//分页li标签
function echo_li_a($i,$paged){
if($i == $paged){echo "<a class='hover'>".$i."</a>";}
else{echo "<li><a href='".get_pagenum_link($i)."'>$i</a></li>";}
}
function pageNavLink($range = 5) {//分页范围,设为奇数具有对称性
global $paged,$wp_query;
if (!$max_page) {$max_page = $wp_query->max_num_pages;}//产生的最大分页数
$startRange = ceil($range/2);//分页范围中间的位置
if($max_page > 1) {
if(!$paged) $paged = 1;//首页为0,初始化为1
if($paged > 1){//如果不在首页
echo "<li><a href='".get_pagenum_link(1)."'>首页</a></li>";
echo "<li><a href='".get_pagenum_link($paged-1)."'>上一页</a></li>";
}
else{echo "<li><a>首页</a></li>";}//如果在首页
if($max_page > $range) {//产生的分页数超过范围
for($i = 1;$i <= $range;$i++){
if($paged > $startRange && $paged <= $max_page - $startRange + 1){
//中间。存储$i的值,当前页数减去中间页数,再加上$i得到开始页数,然后循环递增
$position = $i;$i = $paged - $startRange + $i;
echo_li_a($i,$paged);$i = $position;
}
elseif($paged <= $startRange){echo_li_a($i,$paged);}//前面
else{
//后面。存储$i的值,最大页数减去范围页数,再加1得到开始页数
$position = $i;$i = $max_page - $range + $i;
echo_li_a($i,$paged);$i = $position;
}
}
}
//产生的分页数未超过范围
else{for($i = 1;$i <= $max_page;$i++){echo_li_a($i,$paged);}}
if($paged == $max_page){echo "<li><a>末页</a></li>";}//如果在末页
else{//不在末页
echo "<li><a href='".get_pagenum_link($paged+1)."'>下一页</a></li>";
echo "<li><a href='".get_pagenum_link($max_page)."'>末页</a></li>";
}
}
}
如何调用:
<div><?php pageNavLink();?></div>
这个代码来自网络上,附上转载地址。
本文用到的图片和代码来自:https://www.luojiasan.com/category/wordpress/1124.html
我们需要根据实际的页面添加CSS样式达到美观效果。


评论