平时我们都是获取到指定分类下的文章然后进行分页,有时我们还需要把符合指定条件的所有分类获取出来,然后还需要给他们分页,那么 WordPress 自带的分页就不起作用了,可以参考下面的代码实现对分类的分页:
<?php
$taxonomy = 'product_cat';
$num = wp_count_terms($taxonomy,array(
'taxonomy' => $taxonomy,
'hide_empty' => false,
));
$page=$_GET['page'];//当前是第几页
$pagesize=20;//每页显示记录数量
$pages=($page-1)*$pagesize;//偏移量
$nums=ceil($num/$pagesize);//总页数
if(!$_GET['page']){
$page=1;
$pages=0;
};
?>
<ul class="courselist_out">
<?php $terms = get_terms( array(
'taxonomy' => $taxonomy,
'hide_empty' => false,
'number' => $pagesize,
'offset' => $pages,
));?>
<?php if($terms){?>
<?php foreach ($terms as $term) {?>
<li>
<?php echo $term->name;?>
</li>
<?php } ?>
<?php } ?>
<div class="clearfix"></div>
</ul>
<?php $page_t=$page-1;$page_r=$page+1;?>
<div class="page_navi text-center">
<?php if($_GET['page'] > 1 ){?>
<a href="<?php bloginfo('url');?>/product_cat?page=<?php echo $page_t;?>">上一页</a>
<!--这里面的链接前缀部分根据您的具体情况调整-->
<?php } ?>
<?php if($nums > 1){?>
<?php for($i=1; $i<=$nums; $i++) {?>
<a href="<?php bloginfo('url');?>/product_cat?page=<?php echo $i;?>" class="<?php if($_GET['page'] == $i){echo "current";};?>"><?php echo $i;?></a>
<!--这里面的链接前缀部分根据您的具体情况调整-->
<?php } ?>
<?php } ?>
<?php if($nums <=1 || $_GET['page'] == $nums ){?>
<?php } else {?>
<a href="<?php bloginfo('url');?>/product_cat?page=<?php echo $page_r;?>">下一页</a>
<!--这里面的链接前缀部分根据您的具体情况调整-->
<?php } ?>
</div>
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!