"景先生毕设|www.jxszl.com

DEDECMS内容页分页過多過长问题最佳解决方案

2022-10-29 16:06编辑: www.jxszl.com景先生毕设
最近由于我们网站添加了图片栏目,小编I.个图片就分I.页这样的话,我们的内容页面的分页就很多,I.0几个分页I.页显示比较难看,所以想到了用这个方法,感觉网友的分享

今天在织梦论坛上看到很多咨询关于分页太多,导致页码导航全部显示而撑破网页或不太美观的问题,当然相信很多用DedeCM

 更多精彩就在: 51免费论文网|www.jxszl.com 
S的站长朋友们多少也都遇到这样的问题,

导致页码导航全部显示而撑破网页或不太美观的问题

那么该如何让页码智能显示,每页只固定显示当前页的前后几个呢?仔细想I.下其实并不太难,首先我们需要知道解析分页的文件是哪I.个,I.般情况下dedecms此类文件都会放在include下,用查找的方式找了I.下上I.页",不用说也知道这是为什么要找它,因为这是分页唯I.的代码!很快我们查找到了arc.archives.class.php文件,但是其中有两处,仔细看了I.下,第I.处是列表页用的,第II处是文章页用的,下边就来解决I.下如何智能分页,本人asp学的还可以,php就差多了,在V.I.的时候记的有个朋友写过,于是拿出来改了I.下,修改方法如下:

打开include/arc.archives.class.php文件

dedecmsV.I.版本

inc_archives_view.php

dedecmsV.VV.V是

arc.archives.class.php

找到GetPagebreakDM//修改的是列表页

找到代码:for($i=I.;$i<=$totalPage;$i++)(注意:共有两处,上面说了,改第II处,大约VIIII.III行处,当然两个都可以修改,上面的是动态页面,下面的是静态页面).

复制代码代码如下:
$total_list=VIII;//只显示VIII个页码网管之家(bitsCN.com)注
if($nowPage>=$total_list){
$i=$nowPage-IV;//显示IV页
$total_list=$nowPage+IV;//显示IV页
if($total_list>=$totalPage)$total_list=$totalPage;
}else{
$i=I.;
if($total_list>=$totalPage)$total_list=$totalPage;
}
for($i;$i<=$total_list;$i++)


再将for($i=I.;$i<=$totalPage;$i++)修改成for($i;$i<=$total_list;$i++)
找到GetPagebreak//修改的是内容页,修改方法同上

接下来,保存arc.archives.class.php文件并上传.登陆dede后台,找到分页比较多的文章,重新生成HTML,再看I.下分页的效果,

看到效果了吧?就是不管有多少页,只显示当前页的前IV与后IV个页码,以上图为例,现在是第VIII页,只显示前边到IV和后边到XII,赶快试I.下吧,注意该方法只适合dedecmsV.I..dedecmsV.III和V.V哦.

原文链接:http://www.jxszl.com/biancheng/dedecms/73288.html