TShopping

 找回密碼
 註冊
搜索
查看: 5052|回復: 1

[分享] 論壇版塊直排系統 v1.071

  [複製鏈接]
發表於 2008-5-19 01:03:26 | 顯示全部樓層 |閱讀模式
 
Push to Facebook
[獨家]論壇版塊直排系統 v1.071
Plug-in Name: 論壇版塊直排系統
Designed for Discuz!6
Author:ntf
Type: Discuz! Plugin
請保留版權訊息,請勿轉載本內容到其他網站

免費內容:
本次更新:
基於v1.07內部測試版的正式版
對於v1.07版作小許修正

免費內容:
系統簡介:
本系統包含: 1個獨立的版塊管理系統, 2個 提供參考的風格
關於其外觀,可參照最底的[部份網站的設計]。

1. download HKCZ - 論壇版塊直排系統 & upload to your server

2.
2.SQL: (全新安裝適用) 複製內容到剪貼板 代碼:ALTER TABLE `cdb_forums` ADD `straightdisplay` SMALLINT( 1 ) NOT NULL DEFAULT '0';


3.Edit Program

index.php
注意: 這段較易修改錯誤
find:
  1. unset($_DCACHE['announcements']);
複製代碼
add below:
  1. $showforumlist=$_GET['showforumlist'];
  2. $showforumlist=empty($showforumlist) ? $_DCOOKIE['showforumlist'] : $showforumlist;

  3. if(!$_DCOOKIE['showforumlist'] or ($_DCOOKIE['showforumlist']!=$showforumlist)){
  4. $sdsetcookie =!empty($showforumlist) ? $showforumlist : 'straightdisplay'; //沒有選擇的顯示方式 straightdisplay為直排 default為本來的顯示
  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. find       [code] if(isset($catlist[0]) && $catlist[0]['forumscount']) {
  94.                 $catlist[0]['fid'] = 0;
  95.                 $catlist[0]['type'] = 'group';
  96.                 $catlist[0]['name'] = $bbname;
  97.                 $catlist[0]['collapseimg'] = 'collapsed_no.gif';
  98.         } else {
  99.                 unset($catlist[0]);
  100.         }
複製代碼
[/code]
add below:
  1. }
複製代碼
互換功能 顯示位置 (如需要)
<!--{if $gid || $showforumlist == 'default'}-->
<a href="{$PHP_SELF}?showforumlist=straightdisplay">變更為直排顯示</a>
<!--{elseif empty($gid) && $showforumlist == 'straightdisplay'}-->
<a href="{$PHP_SELF}?showforumlist=default">變更為普通顯示</a>
<!--{/if}-->

顯示直排位置: 如 discuz.htm 找
<!--{loop $catlist $key $cat}-->
        <!--{if $cat['forumscount']}-->
                <div class="mainbox forumlist">
                        <span class="headactions">
                                <!--{if $cat['moderators']}-->{lang forum_category_modedby}: $cat[moderators]<!--{/if}-->
                                <img id="category_$cat[fid]_img" src="{IMGDIR}/$cat[collapseimg]" title="{lang spread}" alt="{lang spread}"  />
                        </span>
                        <h3><a href="$indexname?gid=$cat[fid]">$cat[name]</a></h3>
                        <table id="category_$cat[fid]" summary="category$cat[fid]" cellspacing="0" cellpadding="0" style="$collapse['category_'.$cat[fid]]">
                        <!--{if !$cat['forumcolumns']}-->
                                <thead class="category">
                                        <tr>
                                                <th>{lang forum_name}</th>
                                                <td class="nums">{lang forum_threads}</td>
                                                <td class="nums">{lang forum_posts}</td>
                                                <td class="lastpost">{lang forum_lastpost}</td>
                                        </tr>
                                </thead>
                                <!--{loop $cat[forums] $forumid}-->
                                        <!--{eval $forum=$forumlist[$forumid];}-->
                                        <tbody id="forum$forum[fid]">
                                                <tr>
                                                        <th$forum[folder]>
                                                                $forum[icon]
                                                                <h2><a href="forumdisplay.php?fid=$forum[fid]">$forum[name]</a><!--{if $forum[todayposts]}--><em> ({lang index_today}: $forum[todayposts])</em><!--{/if}--></h2>
                                                                <!--{if $forum[description]}--><p>$forum[description]</p><!--{/if}-->
                                                                <!--{if $forum['subforums']}--><p>{lang forum_subforums}: $forum['subforums']</p><!--{/if}-->
                                                                <!--{if $forum['moderators']}--><!--{if $moddisplay == 'flat'}--><p class="moderators">{lang forum_moderators}: $forum[moderators]</p><!--{else}--><span class="dropmenu" id="mod$forum[fid]" >{lang forum_moderators}</span><ul class="moderators popupmenu_popup" id="mod$forum[fid]_menu" style="display: none">$forum[moderators]</ul><!--{/if}--><!--{/if}-->
                                                        </th>
                                                        <td class="nums">$forum[threads]</td>
                                                        <td class="nums">$forum[posts]</td>
                                                        <td class="lastpost">
                                                        <!--{if $forum['permission'] == 1}-->
                                                                {lang private_forum}
                                                        <!--{else}-->
                                                                <!--{if is_array($forum['lastpost'])}-->
                                                                        <a href="redirect.php?tid=$forum[lastpost][tid]&goto=lastpost#lastpost">{eval echo cutstr($forum[lastpost][subject], 40)}</a>
                                                                        <cite>{lang forum_lastpost_by} <!--{if $forum['lastpost']['author']}-->$forum['lastpost']['author']<!--{else}-->{lang anonymous}<!--{/if}--> - $forum[lastpost][dateline]</cite>
                                                                <!--{else}-->
                                                                        {lang never}
                                                                <!--{/if}-->
                                                        <!--{/if}-->
                                                        </td>
                                                </tr>
                                        </tbody>
                                <!--{/loop}-->
                        <!--{else}-->
                                        <tr>
                                        <!--{loop $cat['forums'] $forumid}-->
                                                <!--{eval $forum=$forumlist[$forumid];}-->
                                                <!--{if $forum['orderid'] && ($forum['orderid'] % $cat['forumcolumns'] == 0)}-->
                                                        </tr></tbody>
                                                        <!--{if $forum['orderid'] < $cat['forumscount']}-->
                                                                <tbody><tr>
                                                        <!--{/if}-->
                                                <!--{/if}-->
                                                <th width="$cat[forumcolwidth]"{$forum[folder]}>
                                                        <h2><a href="forumdisplay.php?fid=$forum[fid]">$forum[name]</a><!--{if $forum[todayposts]}--><em> ({lang index_today}: $forum[todayposts])</em><!--{/if}--></h2>
                                                        <p>{lang forum_threads}: $forum[threads], {lang forum_posts}: $forum[posts]</p>
                                                        <p>{lang forum_lastpost}:
                                                                <!--{if is_array($forum['lastpost'])}-->
                                                                        <a href="redirect.php?tid=$forum[lastpost][tid]&goto=lastpost#lastpost">$forum[lastpost][dateline]</a>
                                                                        {lang forum_lastpost_by} <!--{if $forum['lastpost']['author']}-->$forum['lastpost']['author']<!--{else}-->{lang anonymous}<!--{/if}-->
                                                                <!--{else}-->
                                                                        {lang never}
                                                                <!--{/if}-->
                                                        </p>
                                                </th>
                                        <!--{/loop}-->
                                $cat['endrows']
                        <!--{/if}-->
                        </table>
                </div>
                <div id="ad_intercat_$key"></div>
        <!--{/if}-->
<!--{/loop}-->

改為
  1. <!--{if $gid || $showforumlist == 'default'}-->
  2. {template forumlist_default}
  3. <!--{elseif empty($gid) && $showforumlist == 'straightdisplay'}-->
  4. {template forumlist_straightdisplay}
  5. <!--{/if}-->
複製代碼

admin/forums.inc.php
  1. $table_forum_columns = array('fup', 'type', 'name', 'status', 'styleid', 'allowsmilies', 'allowhtml', 'allowbbcode', 'allowimgcode', 'allowanonymous', 'allowshare', 'allowpostspecial', 'alloweditrules', 'allowpaytoauthor', 'alloweditpost', 'modnewposts', 'recyclebin', 'jammer', 'forumcolumns', 'threadcaches', 'disablewatermark', 'autoclose', 'simple');
複製代碼
改為
//社區直排顯示
$table_forum_columns = array('fup', 'type', 'name', 'status', 'styleid', 'allowsmilies', 'allowhtml', 'allowbbcode', 'allowimgcode', 'allowanonymous', 'allowshare', 'allowpostspecial', 'alloweditrules', 'allowpaytoauthor', 'alloweditpost', 'modnewposts', 'recyclebin', 'jammer', 'forumcolumns', 'threadcaches', 'disablewatermark', 'autoclose', 'simple','straightdisplay');
//社區直排顯示

  1. $forumfields['fup'] = $forum ? $fup : 0;
  2. $forumfields['type'] = $forum['type'] == 'forum' ? 'sub' : 'forum';
  3. $forumfields['name'] = $newforum;
  4. $forumfields['status'] = 1;
複製代碼
下加
  1. //社區直排顯示
  2. $forumfields['straightdisplay'] = $forum['straightdisplay'];
  3. //社區直排顯示
複製代碼
  1. $query = $db->query("SELECT fid, type, inheritedmod FROM {$tablepre}forums WHERE fid='$fupnew'");
複製代碼
改為
  1. //社區直排顯示
  2. $query = $db->query("SELECT fid, type, inheritedmod,straightdisplay FROM {$tablepre}forums WHERE fid='$fupnew'");
  3. //社區直排顯示
複製代碼
  1. $fupadd = ", type='".($fup['type'] == 'forum' ? 'sub' : 'forum')."', fup='$fup[fid]'";
複製代碼
改為
//社區直排顯示
$fupadd = ", type='".($fup['type'] == 'forum' ? 'sub' : 'forum')."', fup='$fup[fid]', straightdisplay='$fup[straightdisplay]'";
//社區直排顯示

注要: 安裝時,如果為非BIG5,請把本導入數據先轉碼
5.插件導入數據 複製內容到剪貼板 代碼:# Discuz! Plugin Dump
# Version: Discuz! 6.0.0 BIG5
# Please visit our website for latest news about Discuz!
# --------------------------------------------------------
YTozOntzOjY6InBsdWdpbiI7YTo5OntzOjk6ImF2YWlsYWJsZSI7czoxOiIx
IjtzOjc6ImFkbWluaWQiO3M6MToiMSI7czo0OiJuYW1lIjtzOjE2OiK9177C
qqm29Kq9scaodLLOIjtzOjEwOiJpZGVudGlmaWVyIjtzOjE1OiJzdHJhaWdo
dGRpc3BsYXkiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjA6IiI7czoxMDoiZGF0
YXRhYmxlcyI7czowOiIiO3M6OToiZGlyZWN0b3J5IjtzOjA6IiI7czo5OiJj
b3B5cmlnaHQiO3M6Mjk6IiBEaXNjdXqqvbHGxeOl3GNhY2hlqqkgYnkgbnRm
IjtzOjc6Im1vZHVsZXMiO3M6MTc4OiJhOjE6e2k6MDthOjY6e3M6NDoibmFt
ZSI7czoxNToic3RyYWlnaHRkaXNwbGF5IjtzOjQ6Im1lbnUiO3M6ODoiqr2x
xrresnoiO3M6MzoidXJsIjtzOjE5OiJzdHJhaWdodGRpc3BsYXkucGhwIjtz
OjQ6InR5cGUiO3M6MToiNSI7czo3OiJhZG1pbmlkIjtzOjE6IjEiO3M6MTI6
ImRpc3BsYXlvcmRlciI7aToxO319Ijt9czo3OiJ2ZXJzaW9uIjtzOjU6IjYu
MC4wIjtzOjQ6InZhcnMiO2E6NTp7aTowO2E6Nzp7czoxMjoiZGlzcGxheW9y
ZGVyIjtzOjE6IjEiO3M6NToidGl0bGUiO3M6MTY6Ir3XvsKvwaTeqEOm5rzG
pdgiO3M6MTE6ImRlc2NyaXB0aW9uIjtzOjA6IiI7czo4OiJ2YXJpYWJsZSI7
czo4OiJicmVha251bSI7czo0OiJ0eXBlIjtzOjY6Im51bWJlciI7czo1OiJ2
YWx1ZSI7czoxOiI0IjtzOjU6ImV4dHJhIjtzOjA6IiI7fWk6MTthOjc6e3M6
MTI6ImRpc3BsYXlvcmRlciI7czoxOiIyIjtzOjU6InRpdGxlIjtzOjk6IrLE
Mabmw0Om4iI7czoxMToiZGVzY3JpcHRpb24iO3M6MTU6Iqq9scatt67mwMky
sU2lziI7czo4OiJ2YXJpYWJsZSI7czoxMToiZGlzcGxheV9vbmUiO3M6NDoi
dHlwZSI7czo2OiJzZWxlY3QiO3M6NToidmFsdWUiO3M6NDoiYmx1ZSI7czo1
OiJleHRyYSI7czo1NToiYmx1ZSA9IMLFpuINCmdyZWVuID0guvGm4g0Kb3Jh
bmdlID0gvu2m4g0KcHVycGxlID0gtbWm4iI7fWk6MjthOjc6e3M6MTI6ImRp
c3BsYXlvcmRlciI7czoxOiIzIjtzOjU6InRpdGxlIjtzOjk6IrLEMqbmw0Om
4iI7czoxMToiZGVzY3JpcHRpb24iO3M6MTU6Iqq9scatt67mwMkysU2lziI7
czo4OiJ2YXJpYWJsZSI7czoxMToiZGlzcGxheV90d28iO3M6NDoidHlwZSI7
czo2OiJzZWxlY3QiO3M6NToidmFsdWUiO3M6NToiZ3JlZW4iO3M6NToiZXh0
cmEiO3M6NTU6ImJsdWUgPSDCxabiDQpncmVlbiA9ILrxpuINCm9yYW5nZSA9
IL7tpuINCnB1cnBsZSA9ILW1puIiO31pOjM7YTo3OntzOjEyOiJkaXNwbGF5
b3JkZXIiO3M6MToiNSI7czo1OiJ0aXRsZSI7czo5OiKyxDSm5sNDpuIiO3M6
MTE6ImRlc2NyaXB0aW9uIjtzOjE1OiKqvbHGrbeu5sDJMrFNpc4iO3M6ODoi
dmFyaWFibGUiO3M6MTI6ImRpc3BsYXlfZm91ciI7czo0OiJ0eXBlIjtzOjY6
InNlbGVjdCI7czo1OiJ2YWx1ZSI7czo2OiJwdXJwbGUiO3M6NToiZXh0cmEi
O3M6NTU6ImJsdWUgPSDCxabiDQpncmVlbiA9ILrxpuINCm9yYW5nZSA9IL7t
puINCnB1cnBsZSA9ILW1puIiO31pOjQ7YTo3OntzOjEyOiJkaXNwbGF5b3Jk
ZXIiO3M6MToiNCI7czo1OiJ0aXRsZSI7czo5OiKyxDOm5sNDpuIiO3M6MTE6
ImRlc2NyaXB0aW9uIjtzOjE1OiKqvbHGrbeu5sDJMrFNpc4iO3M6ODoidmFy
aWFibGUiO3M6MTM6ImRpc3BsYXlfdGhyZWUiO3M6NDoidHlwZSI7czo2OiJz
ZWxlY3QiO3M6NToidmFsdWUiO3M6Njoib3JhbmdlIjtzOjU6ImV4dHJhIjtz
OjU1OiJibHVlID0gwsWm4g0KZ3JlZW4gPSC68abiDQpvcmFuZ2UgPSC+7abi
DQpwdXJwbGUgPSC1tabiIjt9fX0=

運行系統管理插件 進行設置

 

臉書網友討論

本帖子中包含更多資源

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

x
*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



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

GMT+8, 2024-3-29 21:21 , Processed in 0.076414 second(s), 20 queries .

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

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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