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

发布时间:2020-05-15 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了DEDECMS内容页分页过多、过长问题最佳解决方案脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

《DEDECMS内容页分页过多、过长问题最佳解决方案》要点:
本文介绍了DEDECMS内容页分页过多、过长问题最佳解决方案,希望对您有用。如果有疑问,可以联系我们。

导读:今天在织梦论坛上看到很多咨询关于分页太多,导致页码导航全部显示而撑破网页或不太美观的问题,当然相信很多用DedeCMS的站长朋友们多少也...
今天在织梦论坛上看到很多咨询关于分页太多,当然相信很多用DedeCMS的站长朋友们多少也都遇到这样的问题,如下图所示:

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



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

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

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

dedecms5.1版本

inc_archives_view.php

dedecms 5.5 5.5是

arc.archives.class.php

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

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

 
代码如下:
$total_list=8; //只显示8个页码 脚本之家(jb51.net)注
if($nowPage >= $total_list) {
$i = $nowPage-4; //显示4页
$total_list = $nowPage+4; //显示4页
if($total_list >= $totalPage) $total_list = $totalPage;
}else{
$i=1;
if($total_list >= $totalPage) $total_list = $totalPage;
}
for($i;$i<=$total_list;$i++)

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

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

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




看到效果了吧?就是不管有多少页,只显示当前页的前四与后四个页码,以上图为例,现在是第八页,只显示前边到四和后边到十二,赶快试一下吧,注意该办法只适合dedecms5.1、dedecms5.3和5.5哦.

欢迎参与《DEDECMS内容页分页过多、过长问题最佳解决方案》讨论,分享您的想法,脚本之家PHP学院为您提供专业教程。

总结

以上是脚本之家为你收集整理的DEDECMS内容页分页过多、过长问题最佳解决方案全部内容,希望文章能够帮你解决DEDECMS内容页分页过多、过长问题最佳解决方案所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入脚本之家官方QQ群:1065694478