dede系统的pagebreak文章页面分页数量控制方法

品味人生 • 发布于 2019-02-01 21:37:02

这个家伙很害羞,不想介绍自己!

dede系统,默认情况下是无法自定义分页标签数量的。
这个教程主要是改一下{dede:pagebreak/}这个标签,毫无疑问这是个文章内容分页的标签,但是有一个缺点,就是不管分多少页都分页都显示出来。

这样在某些情况下会严重影响页面的布局,而且文章页面过多全部显示出来的话 ,也会影响用户体验,因此这篇教程围绕dede分页数量无法控制的问题,以修改{dede:pagebreak/}标签为主进行讲解。

情况如下:


织梦标签:dede:pagebreak文章内容页面分页显示数量控制
这是分了15页,假如更多呢,不感想象,自己辛苦花钱做出来的模板就完全走样了!

改后效果:

1
织梦标签:dede:pagebreak文章内容页面分页显示数量控制

2
织梦标签:dede:pagebreak文章内容页面分页显示数量控制

3
织梦标签:dede:pagebreak文章内容页面分页显示数量控制

修改方法:

在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++)

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