源码论坛公告:本站是一个交流学习建站资源的社区论坛,旨在交流学习源码脚本等资源技术,欢迎大家投稿发言! 【点击此处将锦尚放在桌面

源码论坛,商业源码下载,尽在锦尚中国商业源码论坛

 找回密码
 会员注册

QQ登录

只需一步,快速开始

查看: 1784|回复: 0
打印 上一主题 下一主题

[CSS/Html] 帝国CMS列表[!--show.listpage--]分页样式

[复制链接]

3102

主题

3503

帖子

13万

金币

超级版主

Rank: 8Rank: 8

积分
271670
跳转到指定楼层
1#
发表于 2023-4-5 11:39:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
帝国CMS,列表,模版,分页,样式,[!--show.listpage--]

我们在自己设计网站列表页面或者仿别人的列表页面的时候可能会感觉帝国cms默认的列表页分页样式不是很好看,不过经过我最记得使用发现,这个分页样式可能不够好看,但是功能性上是非常不错的,所以建议最好不要去修改系统文件,有需要的话可以修改css样式表。

默认的[!--show.listpage--]效果图



对于有需要的童鞋,可以修改e/class/t_functions.php文件下的sys_ShowListMorePage函数。

  1. function sys_ShowListMorePage($num,$page,$dolink,$type,$totalpage,$line,$ok,$search=""){   
  2. global $fun_r,$public_r;   
  3. //num是取得的当前总的文章数,line是栏目设定里的一页显示多少文章数。如果当前文章总数少于设定数,中断程序返回,并且什么也不显示。   
  4. if($num<=$line)   
  5. {   
  6.   $pager['showpage']='';   
  7.   return $pager;   
  8. }   
  9. //listpagelistnum是"参数设置" 里的 "信息设置" 下的 "列表分页函数" 每页显示16个页码这一项。上面的图片上因为文章较少,所以只显示了6个。   
  10. $page_line=$public_r['listpagelistnum'];   
  11. $snum=2;   
  12. //这个$snum可以控制 "当前页" 显示的位置,设置成2,当前页就显示在第3个位置。上面的效果图上snum=2。   
  13. //$totalpage=ceil($num/$line);//取得总页数   
  14. $firststr='<a title="Total record"> <b>'.$num.'</b> </a>  ';//显示总文章数   
  15. //上一页   
  16. if($page<>1)   
  17. {   
  18. //若当前页不是第一页,则显示它的上一页链接   
  19. //$dolink是栏目的地址,比如http://www.shifenji.com/cpzs/ ;$type是网页文件的扩展名,比如 .html ,那个$type之前有个点,是起连接作用的连接符,也就是说$type里面的内容是  .html   
  20. $toppage='<a href="'.$dolink.'index'.$type.'">'.$fun_r['startpage'].'</a> ';   
  21. $pagepr=$page-1;   
  22. if($pagepr==1)   
  23. {   
  24. $prido="index".$type;   
  25. }   
  26. else   
  27. {   
  28. $prido="index_".$pagepr.$type;   
  29. }   
  30. $prepage='<a href="'.$dolink.$prido.'">'.$fun_r['pripage'].'</a>';   
  31. }   
  32. //下一页   
  33. if($page!=$totalpage)   
  34. {   
  35. //如果当前页不是最后一页,则显示它的下一页链接   
  36. $pagenex=$page+1;   
  37. $nextpage=' <a href="'.$dolink.'index_'.$pagenex.$type.'">'.$fun_r['nextpage'].'</a>';   
  38. $lastpage=' <a href="'.$dolink.'index_'.$totalpage.$type.'">'.$fun_r['lastpage'].'</a>';   
  39. }   
  40. //通过判断当前页码与上面讲述的snum的大小,确定页码显示的状态。如果$page-$snum<1,$starti赋值为1,否则$starti赋值为$page-$snum。   
  41. $starti=$page-$snum<1?1:$page-$snum;   
  42. $no=0;   
  43. //此处的for循环就是用来显示页码的,包括从第几个页码开始显示,以及当前页码加粗和显示多少个页码   
  44. for($i=$starti;$i<=$totalpage&$no<$page_line;$i++)   
  45. {   
  46. $no++;   
  47. //如果是当前页码,则加粗,有需要修改当前页码样式的可在此修改   
  48. if($page==$i)   
  49. {   
  50. $is_1="<b>";   
  51. $is_2="</b>";   
  52. }   
  53. //如果当前页是首页   
  54. elseif($i==1)   
  55. {   
  56. $is_1='<a href="'.$dolink.'index'.$type.'">';   
  57. $is_2="</a>";   
  58. }   
  59. //其余的页码,可以通过给a加样式来修改显示效果   
  60. else   
  61. {   
  62. $is_1='<a href="'.$dolink.'index_'.$i.$type.'">';   
  63. $is_2="</a>";   
  64. }   
  65. //$returnstr即是生成的显示页号的代码   
  66. $returnstr.=' '.$is_1.$i.$is_2;   
  67. }   
  68. $returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage;   
  69. $pager['showpage']=$returnstr;   
  70. return $pager;   
  71. }
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

锦尚中国源码论坛

聚合标签|锦尚中国,为中国网站设计添动力 ( 鲁ICP备09033200号 ) |网站地图

GMT+8, 2024-4-27 09:09 , Processed in 0.036231 second(s), 17 queries .

带宽由 锦尚数据 提供 专业的数据中心

© 锦尚中国源码论坛 52jscn Inc. 非法入侵必将受到法律制裁 法律顾问:IT法律网 & 褚福省律师 锦尚爱心 版权申诉 版权与免责声明