Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[分享] Discuz! 4 与 IPB 页数美化與功能结合显示及智能分析页数

[复制链接]
笨水水 发表于 2005-5-7 18:30:10 | 显示全部楼层 |阅读模式
插件名称:仿 IPB 页数显示(含D4页数导航) V.2
插件作者:笨水水
插件修改日期:1月9日


插件功能:除了D4α 页数显示功能外,将D4α 的页数手动输入功能改为Invision Power Board v2.0.2的JAVA自动页数导航及输入。
以下为 IPB | D4α 最新页数显示(含页数导航)功能:
1. 当现时页数少于最大页数时,页数导航会预设数字为下一页;
2. 当页数等于或大于(恶意输入)时,页数导航会预设数字为最大页数的上一页,若现时页数大于最大页数很多(恶意输入)时,即使输入数字大于最大页数,最后亦会自动跳至最大页数;
3. 无论使用者输入比最大页数多大的数字,最后亦会自动跳入最大页数,而不会跟从使用者的恶意输入;

4. 显示论坛最大页数及帖子数量
5. 显示当前页数
6. 所有仿 Discuz! 4.0.0α 页数显示 (加强版)的功能
7. 唯一不能实现的是用户需要自行修改风格颜色,预设颜色是IPB风格
8. 自动扫描用户的“每页显示主题数”和“每页显示贴子数”,这样清除了上一版本的漏洞,令到用户无论设定了那一个数目,插件也不受影响
9. 智能分析上一頁與下一頁,如下圖顯示

========================================


新安裝用戶

修改文件: include/global.php
修改模板:css.htm (所有风格)

include/global.php
========================================
查找

  1.                 $multipage .= "<a href="$mpurl&page=1">&lt;&lt;</a> &nbsp;";
  2.                 for($i = $from; $i <= $to; $i++) {
  3.                         if($i != $curr_page) {
  4.                                 $multipage .= "<a href="$mpurl&page=$i">[$i]</a>&nbsp;";
  5.                         } else {
  6.                                 $multipage .= '<u><b>['.$i.']</b></u>&nbsp;';
  7.                         }
  8.                 }
  9.                 $multipage .= $pages > $page ? " ... <a href="$mpurl&page=$pages"> [$pages] &gt;&gt;</a>" : " <a href="$mpurl&page=$pages">&gt;&gt;</a>";
  10.         }
  11.         return $multipage;
  12. }
复制代码


替换成
  1. $back = $curr_page -1;
  2.                 $next = $curr_page +1;
  3.                 $fwd_back .= "<SCRIPT type="text/javascript">
  4. <!--
  5.                 function multi_page_jump( url_bit, total_posts, per_page )
  6. {
  7.         pages = 1;
  8.         cur_st = $curr_page * Math.ceil($num / $pages);
  9.         cur_page  = $curr_page;
  10.        
  11.         if ( total_posts % Math.ceil($num / $pages) == 0 )
  12.         {
  13.                 pages = total_posts / Math.ceil($num / $pages);
  14.         }
  15.         else
  16.         {
  17.                 pages = Math.ceil( total_posts / Math.ceil($num / $pages) );
  18.         }
  19.        
  20.         msg = dbj_lang_tpl_q1 + " " + pages + dbj_lang_tpl_q2;
  21.        
  22.         if ( cur_st > 0 )
  23.         {
  24.                 cur_page = $curr_page;
  25.         }
  26.        
  27.         show_page = 1;
  28.        
  29.         if ( cur_page < pages )
  30.         {
  31.                 show_page = cur_page + 1;
  32.         }
  33.        
  34.         if ( cur_page >= pages )
  35.         {
  36.                 show_page = cur_page - 1;
  37.         }
  38.         else
  39.         {
  40.                 show_page = cur_page + 1;
  41.         }
  42.        
  43.         userPage = prompt( msg, show_page );
  44.        
  45.         if ( userPage > 0  )
  46.         {
  47.                 if ( userPage < 1 )     {    userPage = 1;  }
  48.                 if ( userPage > pages ) { userPage = pages; }
  49.                 if ( userPage == 1 )    {     start = 1;    }
  50.                 else { start = userPage }
  51.        
  52.                 window.location = url_bit + "&page=" + start;
  53.         }
  54. }
  55. //-->
  56. </SCRIPT>
  57. <SCRIPT type="text/javascript">
  58. <!--

  59. var dbj_lang_tpl_q1  = "请输入一个由 1 至";
  60. var dbj_lang_tpl_q2  = " 之间的数字";
  61. //-->
  62. </SCRIPT>
  63. <table cellspacing="0"><tr><td style="PADDING-LEFT: 0px"><A title="Jump to page..." href="javascript:multi_page_jump('$mpurl',$num,1);"><span class="pagelink" title="快速转跳页面...">&nbsp;$pages 页&nbsp;</span></a>&nbsp;&nbsp;<span class="pagelink" title="$pages 页 共 $num 篇">&nbsp;$curr_page / $pages&nbsp;</span>&nbsp;&nbsp;";
  64.                         if($curr_page > 2) {
  65.                 $fwd_back .= "<span class="pagelinklast"><a href="$mpurl&page=1" title="回到第一页">|<</a></span>&nbsp;";
  66.                 }
  67.                         if($curr_page > 1) {
  68.                 $fwd_back .= "<span class="pagelink"><a href="$mpurl&page=$back" title="前一页"><</a></span>&nbsp;";
  69.                 }
  70.                         for($i = $from; $i <= $to; $i++) {
  71.                         if($i != $curr_page) {
  72.                                 if($i > $curr_page) {
  73.                 $fwd_back .= "<span class="pagelink"><a href="$mpurl&page=$i" title="下一頁 - 第 $i 頁">$i</a></span>&nbsp;";
  74.                                         } else {
  75.                     $fwd_back .= "<span class="pagelink"><a href="$mpurl&page=$i" title="上一頁 - 第 $i 頁">$i</a></span>&nbsp;";
  76.                                                                                         }
  77.                                 } else {
  78.                 $fwd_back .= "<span class="pagecurrent">$i</span>&nbsp;";
  79.                                 }
  80.                                                  }
  81.                         if($pages != $curr_page) {
  82.                 $fwd_back .= "<span class="pagelink"><a href="$mpurl&page=$next" title="後一页">></a></span>&nbsp;";
  83.                 }
  84.                         if($pages > 2 && $pages > $curr_page +1) {
  85.                 $fwd_back .= $pages > $page ? "<span class="pagelinklast"><a href="$mpurl&page=$pages" title="最后一页">>|</a></span>&nbsp;</td></tr></table>" : "<span class="pagelinklast"><a href="$mpurl&page=$pages" title="最后一页">>|</a></span>&nbsp;</td></tr></table>";
  86.                                 }else{
  87.                 $fwd_back .= "</tr></table>";
  88.                                 }
  89.                 $multipage = $fwd_back;
  90.                                 }
  91.                 return $multipage;
  92. }
复制代码

========================================



templates/所有风格/css.htm
========================================
查找
  1. <style type="text/css">
复制代码


后面加入

  1. .pagelink                { BORDER-RIGHT: #072a66 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: #072a66 1px solid; PADDING-LEFT: 3px; BACKGROUND: #f0f5fa; BORDER-LEFT: #072a66 1px solid; BORDER-BOTTOM: #072a66 1px solid }
  2. .pagelinklast        { BORDER-RIGHT: #072a66 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: #072a66 1px solid; PADDING-LEFT: 3px; BACKGROUND: #f0f5fa; BORDER-LEFT: #072a66 1px solid; BORDER-BOTTOM: #072a66 1px solid }
  3. .pagecurrent        { BORDER-RIGHT: #072a66 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: #072a66 1px solid; PADDING-LEFT: 3px; BACKGROUND: #ffc9a5; BORDER-LEFT: #072a66 1px solid; BORDER-BOTTOM: #072a66 1px solid }
复制代码

========================================
修改完成
c2c3 发表于 2005-5-7 22:06:53 | 显示全部楼层
好东西  
回复

使用道具 举报

F4-Angel 发表于 2005-5-7 23:02:20 | 显示全部楼层
不错..够智能
回复

使用道具 举报

freddy 发表于 2005-5-7 23:09:58 | 显示全部楼层
成功的兄弟回一贴!
我会处理的!
回复

使用道具 举报

耗在网络 发表于 2005-5-7 23:41:34 | 显示全部楼层
修改成功

演示http://80tt.cn/forumdisplay.php?fid=6&page=1

还没修改风格,要是能自适应就好了
回复

使用道具 举报

freddy 发表于 2005-5-7 23:44:17 | 显示全部楼层
OK!加精了!
回复

使用道具 举报

bert_guo 发表于 2005-5-8 00:12:07 | 显示全部楼层
Originally posted by 笨田田 at 2005-5-7 18:30
插件名称:仿 IPB 页数显示(含D4页数导航) V.2
插件作者:笨水水
插件修改日期:1月9日

[img]http://www.dbj.prozz.ne ...

修改成功,好东东.
回复

使用道具 举报

耗在网络 发表于 2005-5-8 00:15:47 | 显示全部楼层
  1. .pagelink                { BORDER-RIGHT: {BORDERCOLOR 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: {BORDERCOLOR 1px solid; PADDING-LEFT: 3px; BACKGROUND: {ALTBG2}; ; BORDER-LEFT: {BORDERCOLOR 1px solid; BORDER-BOTTOM: {BORDERCOLOR 1px solid }
  2. .pagelinklast        { BORDER-RIGHT: {BORDERCOLOR 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: {BORDERCOLOR 1px solid; PADDING-LEFT: 3px; BACKGROUND: {ALTBG2}; ; BORDER-LEFT: {BORDERCOLOR 1px solid; BORDER-BOTTOM: {BORDERCOLOR 1px solid }
  3. .pagecurrent        { BORDER-RIGHT: {BORDERCOLOR 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: {BORDERCOLOR 1px solid; PADDING-LEFT: 3px; BACKGROUND: {ALTBG1}; ; BORDER-LEFT: {BORDERCOLOR 1px solid; BORDER-BOTTOM: {BORDERCOLOR 1px solid }a:link,a:visited        { text-decoration: none; color: {LINK} }
复制代码


适应皮肤CSS模板修改
回复

使用道具 举报

anshow 发表于 2005-5-8 07:18:22 | 显示全部楼层
好,不错,弄上了,谢谢!
回复

使用道具 举报

kary2005 发表于 2005-5-8 10:02:04 | 显示全部楼层
谢谢分享我已经成功了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-22 02:29 , Processed in 0.034315 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表