DedeCms pagebreak控制分页显示数量(防止数量多变形)

网络整理 - 07-21

这个教程主要是改一下{dede:pagebreak/}这个标签,好无疑问这是个文章内容分业的标签,但是有一个缺点,就是不管分多少页都分页都显示出来。
    这个问题是我昨天发现的,在网上找了一下没不能够完全的解决这个问题,所以自己动手改了一下

情况如下:

    这是分了15页,假如更多呢,不感想象,自己辛苦花钱做出来的模板就完全走样了!

修改后的效果

1

2

3

修改方法:

打开include/arc.archives.class.php找到:

function GetPagebreak($totalPage,$nowPage,$aid)

这是一个静态分页解析的一个方法,在这个方法里找到:

for($i=1;$i<=$totalPage$i++)

在这个循环前面加入

if($totalPage>=8){//这个是在分页数量大于的情况下执行下面的语句 $totallist=7+$nowPage;//这里是要显示几页,如果是10页就写9 if($totallist>$totalPage){ $totallist=$totalPage; } $d=$nowPage; $dqys=$totallist-($d-1); if($dqys<8){ $d=$totalPage-7; } }else{ $totallist=$totalPage; $d=1; }

然后再改

for($i=1;$i<=$totalPage$i++)为for($i=$d;$i<=$totallist;$i++)

    这个是静态页面分页的修改,动态的和这个方法一样