TShopping

 找回密碼
 註冊
搜索
查看: 3666|回復: 7

[教學] 論壇版塊直排系統 v1.1 For DZ7

    [複製鏈接]
發表於 2009-1-25 00:27:23 | 顯示全部樓層 |閱讀模式
 
Push to Facebook Push to Plurk Push to Twitter 
SQL: 全新安裝適用
  1. ALTER TABLE `cdb_forums` ADD `straightdisplay` SMALLINT( 1 ) NOT NULL DEFAULT '0';
複製代碼
找 index.php
  1. unset($_DCACHE['announcements']);
複製代碼
下加

  1. // Edit by ntf Start

  2. $showforumlist=empty($_GET['showforumlist']) ? $_DCOOKIE['showforumlist'] : addslashes($_GET['showforumlist']);
  3. if(!$_DCOOKIE['showforumlist'] or ($_DCOOKIE['showforumlist']!=$showforumlist)){
  4.         $sdsetcookie =!empty($showforumlist) ? $showforumlist : 'straightdisplay';
  5.         dsetcookie('showforumlist', $sdsetcookie ,$timestamp+3600000);
  6.         $_DCOOKIE['showforumlist']=$sdsetcookie;
  7.         $showforumlist=$sdsetcookie;
  8. }

  9. if($showforumlist=='straightdisplay'){
  10.         require_once './forumdata/cache/plugin_straightdisplay.php';
  11.         $display_one = $_DPLUGIN['straightdisplay']['vars']['display_one'];      
  12.         $display_two= $_DPLUGIN['straightdisplay']['vars']['display_two'];
  13.         $display_three= $_DPLUGIN['straightdisplay']['vars']['display_three'];      
  14.         $display_four= $_DPLUGIN['straightdisplay']['vars']['display_four'];

  15.         $sql = !empty($accessmasks) ?
  16.                                 "SELECT f.straightdisplay,f.fid, f.fup, f.type, f.name, f.threads, f.posts, f.todayposts, f.lastpost, f.inheritedmod, f.forumcolumns, f.simple, ff.description, ff.moderators, ff.icon, ff.viewperm, a.allowview FROM {$tablepre}forums f
  17.                                         LEFT JOIN {$tablepre}forumfields ff ON ff.fid=f.fid
  18.                                         LEFT JOIN {$tablepre}access a ON a.uid='$discuz_uid' AND a.fid=f.fid
  19.                                         WHERE f.status>0 ORDER BY f.type, f.displayorder"
  20.                                 : "SELECT f.straightdisplay,f.fid, f.fup, f.type, f.name, f.threads, f.posts, f.todayposts, f.lastpost, f.inheritedmod, f.forumcolumns, f.simple, ff.description, ff.moderators, ff.icon, ff.viewperm FROM {$tablepre}forums f
  21.                                         LEFT JOIN {$tablepre}forumfields ff USING(fid)
  22.                                         WHERE f.status>0 ORDER BY f.type, f.displayorder";

  23.         $query = $db->query($sql);
  24.         while($forum = $db->fetch_array($query)) {
  25.                 $forumname[$forum['fid']] = strip_tags($forum['name']);
  26.                 if($forum['type'] != 'group') {
  27.                         $threads += $forum['threads'];
  28.                         $posts += $forum['posts'];
  29.                         $todayposts += $forum['todayposts'];

  30.                         if($forum['type'] == 'forum') {
  31.                                 if(forum($forum)) {

  32. $thissdvalue='catlistone';

  33. switch($forum[straightdisplay]){
  34. case'1':
  35.                                         $catlistone[$forum['fup']]['forums'][] = $forum['fid'];
  36.                                         $forum['orderid'] = $catlistone[$forum['fup']]['forumscount']++;
  37. break;
  38. case'2':
  39.                                         $catlisttwo[$forum['fup']]['forums'][] = $forum['fid'];
  40.                                         $forum['orderid'] = $catlisttwo[$forum['fup']]['forumscount']++;

  41. break;
  42. case'3':
  43.                                         $catlistthree[$forum['fup']]['forums'][] = $forum['fid'];
  44.                                         $forum['orderid'] = $catlistthree[$forum['fup']]['forumscount']++;

  45. break;
  46. case'4':
  47.                                         $catlistfour[$forum['fup']]['forums'][] = $forum['fid'];
  48.                                         $forum['orderid'] = $catlistfour[$forum['fup']]['forumscount']++;
  49. break;
  50. }




  51.                                        
  52.                                         $forum['subforums'] = '';
  53.                                         $forumlist[$forum['fid']] = $forum;
  54.                                 }

  55.                         } elseif(isset($forumlist[$forum['fup']])) {

  56.                                 $forumlist[$forum['fup']]['threads'] += $forum['threads'];
  57.                                 $forumlist[$forum['fup']]['posts'] += $forum['posts'];
  58.                                 $forumlist[$forum['fup']]['todayposts'] += $forum['todayposts'];
  59.                                 if($subforumsindex && $forumlist[$forum['fup']]['permission'] == 2 && !($forumlist[$forum['fup']]['simple'] & 16) || ($forumlist[$forum['fup']]['simple'] & 8)) {

  60. $forumlist[$forum['fup']]['subforums'] .= '<li><a href="forumdisplay.php?fid='.$forum['fid'].'">'.$forum['name'].'</a></li>';
  61.                                 }

  62.                         }
  63.                 } else {

  64.                         if(!isset($_COOKIE['discuz_collapse']) || strpos($_COOKIE['discuz_collapse'], 'category_'.$forum['fid']) === FALSE) {
  65.                                 $forum['collapseimg'] = 'collapsed_no.gif';
  66.                                 $collapse['category_'.$forum['fid']] = '';
  67.                         } else {
  68.                                 $forum['collapseimg'] = 'collapsed_yes.gif';
  69.                                 $collapse['category_'.$forum['fid']] = 'display: none';
  70.                         }

  71.                         if($forum['moderators']) {
  72.                                  $forum['moderators'] = moddisplay($forum['moderators'], 'flat');
  73.                         }
  74.                         $forum['forumscount']         = 0;

  75. switch($forum[straightdisplay]){
  76. case'1':
  77.         $catlistone[$forum['fid']] = $forum;
  78. break;
  79. case'2':
  80.         $catlisttwo[$forum['fid']] = $forum;
  81. break;
  82. case'3':
  83.         $catlistthree[$forum['fid']] = $forum;
  84. break;
  85. case'4':
  86.                 $catlistfour[$forum['fid']] = $forum;
  87. break;
  88. }

  89.                        
  90.                 }
  91.         }

  92. }else{
  93.         //Edit by ntf End
複製代碼
  1. unset($catid, $category);

  2.         if(isset($catlist[0]) && $catlist[0]['forumscount']) {
  3.                 $catlist[0]['fid'] = 0;
  4.                 $catlist[0]['type'] = 'group';
  5.                 $catlist[0]['name'] = $bbname;
  6.                 $catlist[0]['collapseimg'] = 'collapsed_no.gif';
  7.         } else {
  8.                 unset($catlist[0]);
  9.         }
複製代碼
下加
  1. } //Edit by Ntf
複製代碼
打開 templates/ * /discuz.htm  其中*為所有存在的資料夾


  1. <!--{loop $catlist $key $cat}-->
  2.         <!--{if $cat['forumscount']}-->
  3.                 <div class="mainbox list">
  4.                         <span class="headactions">
  5.                                 <!--{if $cat['moderators']}-->{lang forum_category_modedby}: $cat[moderators]<!--{/if}-->
  6.                                 <img id="category_$cat[fid]_img" src="{IMGDIR}/$cat[collapseimg]" title="{lang spread}" alt="{lang spread}" onclick="toggle_collapse('category_$cat[fid]');" />
  7.                         </span>
  8.                         <h3><a href="$indexname?gid=$cat[fid]">$cat[name]</a></h3>
  9.                         <table id="category_$cat[fid]" summary="category$cat[fid]" cellspacing="0" cellpadding="0" style="$collapse['category_'.$cat[fid]]">
  10.                         <!--{if !$cat['forumcolumns']}-->
  11.                                 <!--{loop $cat[forums] $forumid}-->
  12.                                         <!--{eval $forum=$forumlist[$forumid];}-->
  13.                                         <tbody id="forum$forum[fid]">
  14.                                                 <tr>
  15.                                                         <th$forum[folder]>
  16.                                                                 $forum[icon]
  17.                                                                 <div class="left">
  18.                                                                 <h2><a href="forumdisplay.php?fid=$forum[fid]" {if $forum[redirect]}target="_blank"{/if}>$forum[name]</a><!--{if $forum[todayposts] && !$forum['redirect']}--><em> ({lang index_today}: <strong>$forum[todayposts]</strong>)</em><!--{/if}--></h2>
  19.                                                                 <!--{if $forum[description]}--><p>$forum[description]</p><!--{/if}-->
  20.                                                                 <!--{if $forum['subforums']}--><p>{lang forum_subforums}: $forum['subforums']</p><!--{/if}-->
  21.                                                                 <!--{if $forum['moderators']}--><!--{if $moddisplay == 'flat'}--><p>{lang forum_moderators}: $forum[moderators]</p><!--{else}--><span class="dropmenu" id="mod$forum[fid]" onmouseover="showMenu(this.id)">{lang forum_moderators}</span><ul class="moderators popupmenu_popup" id="mod$forum[fid]_menu" style="display: none">$forum[moderators]</ul><!--{/if}--><!--{/if}-->
  22.                                                                 </div>
  23.                                                         </th>
  24.                                                         <td class="forumnums">
  25.                                                                 <!--{if $forum['redirect']}-->N/A<!--{else}--><em>$forum[threads]</em> / $forum[posts]<!--{/if}-->
  26.                                                         </td>
  27.                                                         <td class="forumlast">
  28.                                                         <!--{if $forum['permission'] == 1}-->
  29.                                                                 {lang private_forum}
  30.                                                         <!--{else}-->
  31.                                                                 <!--{if $forum['redirect']}-->
  32.                                                                         <a href="forumdisplay.php?fid=$forum[fid]">{lang url_link}</a>
  33.                                                                 <!--{elseif is_array($forum['lastpost'])}-->
  34.                                                                         <p><a href="redirect.php?tid=$forum[lastpost][tid]&amp;goto=lastpost#lastpost">{echo cutstr($forum[lastpost][subject], 30)}</a></p>
  35.                                                                         <cite><!--{if $forum['lastpost']['author']}-->$forum['lastpost']['author']<!--{else}-->{lang anonymous}<!--{/if}--> - $forum[lastpost][dateline]</cite>
  36.                                                                 <!--{else}-->
  37.                                                                         {lang never}
  38.                                                                 <!--{/if}-->
  39.                                                         <!--{/if}-->
  40.                                                         </td>
  41.                                                 </tr>
  42.                                         </tbody>
  43.                                 <!--{/loop}-->
  44.                         <!--{else}-->
  45.                                 <tr class="narrowlist">
  46.                                 <!--{loop $cat['forums'] $forumid}-->
  47.                                         <!--{eval $forum=$forumlist[$forumid];}-->
  48.                                         <!--{if $forum['orderid'] && ($forum['orderid'] % $cat['forumcolumns'] == 0)}-->
  49.                                                 </tr></tbody>
  50.                                                 <!--{if $forum['orderid'] < $cat['forumscount']}-->
  51.                                                         <tbody><tr>
  52.                                                 <!--{/if}-->
  53.                                         <!--{/if}-->
  54.                                         <th width="$cat[forumcolwidth]"{$forum[folder]}>
  55.                                                 <h2><a href="forumdisplay.php?fid=$forum[fid]" {if $forum[redirect]}target="_blank"{/if}>$forum[name]</a><!--{if $forum[todayposts]}--><em> ({lang index_today}: <strong>$forum[todayposts]</strong>)</em><!--{/if}--></h2>
  56.                                                 <!--{if !$forum[redirect]}-->
  57.                                                         <p>{lang forum_threads}: $forum[threads], {lang forum_posts}: $forum[posts]</p>
  58.                                                         <!--{if $forum['permission'] == 1}-->
  59.                                                                 <p>{lang private_forum}
  60.                                                         <!--{else}-->
  61.                                                                 <p>{lang forum_lastpost}:
  62.                                                                         <!--{if is_array($forum['lastpost'])}-->
  63.                                                                                 <a href="redirect.php?tid=$forum[lastpost][tid]&amp;goto=lastpost#lastpost" title="{echo cutstr($forum[lastpost][subject], 30)} {lang forum_lastpost_by} {if $forum['lastpost']['author']}$forum['lastpost']['authorusername']{else}{lang anonymous}{/if}  ">$forum[lastpost][dateline]</a>
  64.                                                                         <!--{else}-->
  65.                                                                                 {lang never}
  66.                                                                         <!--{/if}-->
  67.                                                                 </p>
  68.                                                         <!--{/if}-->
  69.                                                 <!--{else}-->
  70.                                                         <p>{lang url_link}</p>
  71.                                                 <!--{/if}-->
  72.                                         </th>
  73.                                 <!--{/loop}-->
  74.                                 $cat['endrows']
  75.                         <!--{/if}-->
  76.                         </table>
  77.                 </div>
  78.                 <!--{if !empty($insenz['vfstatus']) && $insenz['vfpos'] == 'rand' && $key == $rkey}--><script type="text/javascript" src="campaign.php?action=list"></script><!--{/if}-->
  79.                 <!--{if $admode && empty($insenz['hardadstatus']) && !empty($advlist['intercat']) && ($advlist['intercat'][$key] = array_merge(($advlist['intercat'][0] ? $advlist['intercat'][0] : array()), ($advlist['intercat'][$key] ? $advlist['intercat'][$key] : array())))}--><div class="ad_column" id="ad_intercat_$key"><!--{echo $advitems[$advlist['intercat'][$key][array_rand($advlist['intercat'][$key])]]}--></div><!--{else}--><div id="ad_intercat_$key"></div><!--{/if}-->
  80.         <!--{/if}-->
  81. <!--{/loop}-->
複製代碼
改為

  1. <!--{if $gid || $showforumlist == 'default'}-->
  2. {template forumlist_default}
  3. <!--{elseif empty($gid) && $showforumlist == 'straightdisplay'}-->
  4. {template forumlist_straightdisplay}
  5. <!--{/if}-->
複製代碼
互換功能 顯示位置 (如需要)


<!--{if $gid || $showforumlist == 'default'}-->
<a href="index.php?showforumlist=straightdisplay">變更為直排顯示</a>
<!--{elseif empty($gid) && $showforumlist == 'straightdisplay'}-->
<a href="index.php?showforumlist=default">變更為普通顯示</a>
<!--{/if}-->


注要: 安裝時,如果為非BIG5,請把本導入數據先轉碼
5.插件導入數據

  1. # Discuz! Plugin Dump
  2. # Version: Discuz! 7.0.0
  3. # Time: 2008-12-17 17:56  
  4. # Plugin Data: StraightDisplay
  5. # --------------------------------------------------------


  6. YTozOntzOjY6InBsdWdpbiI7YTo5OntzOjk6ImF2YWlsYWJsZSI7czoxOiIx
  7. IjtzOjc6ImFkbWluaWQiO3M6MToiMSI7czo0OiJuYW1lIjtzOjEyOiKqwLDP
  8. qr2xxsXjpdwiO3M6MTA6ImlkZW50aWZpZXIiO3M6MTU6InN0cmFpZ2h0ZGlz
  9. cGxheSI7czoxMToiZGVzY3JpcHRpb24iO3M6MDoiIjtzOjEwOiJkYXRhdGFi
  10. bGVzIjtzOjA6IiI7czo5OiJkaXJlY3RvcnkiO3M6MDoiIjtzOjk6ImNvcHly
  11. aWdodCI7czozMDoiIERpc2N1eqq9scbF46Xcut6yeqWtpXggYnkgbnRmIjtz
  12. Ojc6Im1vZHVsZXMiO3M6MTg3OiJhOjE6e2k6MDthOjY6e3M6NDoibmFtZSI7
  13. czoxNToic3RyYWlnaHRkaXNwbGF5IjtzOjQ6Im1lbnUiO3M6MTY6IqrAsM+q
  14. vbHGut6yeqWtpXgiO3M6MzoidXJsIjtzOjE5OiJzdHJhaWdodGRpc3BsYXku
  15. cGhwIjtzOjQ6InR5cGUiO3M6MToiMSI7czo3OiJhZG1pbmlkIjtzOjE6IjEi
  16. O3M6MTI6ImRpc3BsYXlvcmRlciI7aToxO319Ijt9czo3OiJ2ZXJzaW9uIjtz
  17. OjU6IjcuMC4wIjtzOjQ6InZhcnMiO2E6NDp7aTowO2E6Nzp7czoxMjoiZGlz
  18. cGxheW9yZGVyIjtzOjE6IjIiO3M6NToidGl0bGUiO3M6OToissQxpubDQ6bi
  19. IjtzOjExOiJkZXNjcmlwdGlvbiI7czowOiIiO3M6ODoidmFyaWFibGUiO3M6
  20. MTE6ImRpc3BsYXlfb25lIjtzOjQ6InR5cGUiO3M6Njoic2VsZWN0IjtzOjU6
  21. InZhbHVlIjtzOjQ6ImJsdWUiO3M6NToiZXh0cmEiO3M6NTU6ImJsdWUgPSDC
  22. xabiDQpncmVlbiA9ILrxpuINCm9yYW5nZSA9IL7tpuINCnB1cnBsZSA9ILW1
  23. puIiO31pOjE7YTo3OntzOjEyOiJkaXNwbGF5b3JkZXIiO3M6MToiMyI7czo1
  24. OiJ0aXRsZSI7czo5OiKyxDKm5sNDpuIiO3M6MTE6ImRlc2NyaXB0aW9uIjtz
  25. OjA6IiI7czo4OiJ2YXJpYWJsZSI7czoxMToiZGlzcGxheV90d28iO3M6NDoi
  26. dHlwZSI7czo2OiJzZWxlY3QiO3M6NToidmFsdWUiO3M6NToiZ3JlZW4iO3M6
  27. NToiZXh0cmEiO3M6NTU6ImJsdWUgPSDCxabiDQpncmVlbiA9ILrxpuINCm9y
  28. YW5nZSA9IL7tpuINCnB1cnBsZSA9ILW1puIiO31pOjI7YTo3OntzOjEyOiJk
  29. aXNwbGF5b3JkZXIiO3M6MToiNSI7czo1OiJ0aXRsZSI7czo5OiKyxDSm5sND
  30. puIiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjA6IiI7czo4OiJ2YXJpYWJsZSI7
  31. czoxMjoiZGlzcGxheV9mb3VyIjtzOjQ6InR5cGUiO3M6Njoic2VsZWN0Ijtz
  32. OjU6InZhbHVlIjtzOjY6InB1cnBsZSI7czo1OiJleHRyYSI7czo1NToiYmx1
  33. ZSA9IMLFpuINCmdyZWVuID0guvGm4g0Kb3JhbmdlID0gvu2m4g0KcHVycGxl
  34. ID0gtbWm4iI7fWk6MzthOjc6e3M6MTI6ImRpc3BsYXlvcmRlciI7czoxOiI0
  35. IjtzOjU6InRpdGxlIjtzOjk6IrLEM6bmw0Om4iI7czoxMToiZGVzY3JpcHRp
  36. b24iO3M6MDoiIjtzOjg6InZhcmlhYmxlIjtzOjEzOiJkaXNwbGF5X3RocmVl
  37. IjtzOjQ6InR5cGUiO3M6Njoic2VsZWN0IjtzOjU6InZhbHVlIjtzOjY6Im9y
  38. YW5nZSI7czo1OiJleHRyYSI7czo1NToiYmx1ZSA9IMLFpuINCmdyZWVuID0g
  39. uvGm4g0Kb3JhbmdlID0gvu2m4g0KcHVycGxlID0gtbWm4iI7fX19
複製代碼
今次不加後台直接更新直排數據, 請變更/新增版塊後 到 管理系統 直接按 [提交] 更新


如果你不想設計 , 請直接上載 風格檔1或2



 

臉書網友討論

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
發表於 2010-7-17 16:59:05 | 顯示全部樓層
謝謝你的分享
正需要直排呢

版主招募中

發表於 2010-7-17 16:59:30 | 顯示全部樓層
謝謝你的分享
正需要直排呢


發表於 2010-8-4 13:02:44 | 顯示全部樓層
想把我的論壇變成直排的


發表於 2010-8-8 16:44:03 | 顯示全部樓層
回復 1# woff

請問7.2 可以使用嗎?貴站目前也是使用這個嗎?


發表於 2010-10-12 02:28:47 | 顯示全部樓層
想把我的論壇變成直排的


 樓主| 發表於 2010-10-12 11:21:50 | 顯示全部樓層
歡迎使用喔


發表於 2014-8-2 19:31:04 | 顯示全部樓層


  这是什么?


您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2016-12-7 08:05 , Processed in 0.060798 second(s), 19 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表