woff 發表於 2008-5-19 01:03:26

論壇版塊直排系統 v1.071

[獨家]論壇版塊直排系統 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:unset($_DCACHE['announcements']);add below:$showforumlist=$_GET['showforumlist'];
$showforumlist=empty($showforumlist) ? $_DCOOKIE['showforumlist'] : $showforumlist;

if(!$_DCOOKIE['showforumlist'] or ($_DCOOKIE['showforumlist']!=$showforumlist)){
$sdsetcookie =!empty($showforumlist) ? $showforumlist : 'straightdisplay'; //沒有選擇的顯示方式 straightdisplay為直排 default為本來的顯示
dsetcookie('showforumlist',$sdsetcookie,$timestamp+3600000);
$_DCOOKIE['showforumlist']=$sdsetcookie;
$showforumlist=$sdsetcookie;
}

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

      $sql = !empty($accessmasks) ?
                              "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
                                        LEFT JOIN {$tablepre}forumfields ff ON ff.fid=f.fid
                                        LEFT JOIN {$tablepre}access a ON a.uid='$discuz_uid' AND a.fid=f.fid
                                        WHERE f.status>0 ORDER BY f.type, f.displayorder"
                              : "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
                                        LEFT JOIN {$tablepre}forumfields ff USING(fid)
                                        WHERE f.status>0 ORDER BY f.type, f.displayorder";

      $query = $db->query($sql);
      while($forum = $db->fetch_array($query)) {
                $forumname[$forum['fid']] = strip_tags($forum['name']);
                if($forum['type'] != 'group') {
                        $threads += $forum['threads'];
                        $posts += $forum['posts'];
                        $todayposts += $forum['todayposts'];

                        if($forum['type'] == 'forum') {
                              if(forum($forum)) {

$thissdvalue='catlistone';

switch($forum){
case'1':
                                        $catlistone[$forum['fup']]['forums'][] = $forum['fid'];
                                        $forum['orderid'] = $catlistone[$forum['fup']]['forumscount']++;
break;
case'2':
                                        $catlisttwo[$forum['fup']]['forums'][] = $forum['fid'];
                                        $forum['orderid'] = $catlisttwo[$forum['fup']]['forumscount']++;

break;
case'3':
                                        $catlistthree[$forum['fup']]['forums'][] = $forum['fid'];
                                        $forum['orderid'] = $catlistthree[$forum['fup']]['forumscount']++;

break;
case'4':
                                        $catlistfour[$forum['fup']]['forums'][] = $forum['fid'];
                                        $forum['orderid'] = $catlistfour[$forum['fup']]['forumscount']++;
break;
}




                                       
                                        $forum['subforums'] = '';
                                        $forumlist[$forum['fid']] = $forum;
                              }

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

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

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

                        }
                } else {

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

                        if($forum['moderators']) {
                                 $forum['moderators'] = moddisplay($forum['moderators'], 'flat');
                        }
                        $forum['forumscount']         = 0;

switch($forum){
case'1':
      $catlistone[$forum['fid']] = $forum;
break;
case'2':
      $catlisttwo[$forum['fid']] = $forum;
break;
case'3':
      $catlistthree[$forum['fid']] = $forum;
break;
case'4':
                $catlistfour[$forum['fid']] = $forum;
break;
}

                        
                }
      }

}else{
find       if(isset($catlist) && $catlist['forumscount']) {
                $catlist['fid'] = 0;
                $catlist['type'] = 'group';
                $catlist['name'] = $bbname;
                $catlist['collapseimg'] = 'collapsed_no.gif';
      } else {
                unset($catlist);
      }
add below:
}互換功能 顯示位置 (如需要) <!--{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<!--{/if}-->
                              <img id="category_$cat_img" src="{IMGDIR}/$cat" title="{lang spread}" alt="{lang spread}"/>
                        </span>
                        <h3><a href="$indexname?gid=$cat">$cat</a></h3>
                        <table id="category_$cat" summary="category$cat" cellspacing="0" cellpadding="0" style="$collapse['category_'.$cat]">
                        <!--{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 $forumid}-->
                                        <!--{eval $forum=$forumlist[$forumid];}-->
                                        <tbody id="forum$forum">
                                                <tr>
                                                      <th$forum>
                                                                $forum
                                                                <h2><a href="forumdisplay.php?fid=$forum">$forum</a><!--{if $forum}--><em> ({lang index_today}: $forum)</em><!--{/if}--></h2>
                                                                <!--{if $forum}--><p>$forum</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</p><!--{else}--><span class="dropmenu" id="mod$forum" >{lang forum_moderators}</span><ul class="moderators popupmenu_popup" id="mod$forum_menu" style="display: none">$forum</ul><!--{/if}--><!--{/if}-->
                                                      </th>
                                                      <td class="nums">$forum</td>
                                                      <td class="nums">$forum</td>
                                                      <td class="lastpost">
                                                      <!--{if $forum['permission'] == 1}-->
                                                                {lang private_forum}
                                                      <!--{else}-->
                                                                <!--{if is_array($forum['lastpost'])}-->
                                                                        <a href="redirect.php?tid=$forum&goto=lastpost#lastpost">{eval echo cutstr($forum, 40)}</a>
                                                                        <cite>{lang forum_lastpost_by} <!--{if $forum['lastpost']['author']}-->$forum['lastpost']['author']<!--{else}-->{lang anonymous}<!--{/if}--> - $forum</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"{$forum}>
                                                      <h2><a href="forumdisplay.php?fid=$forum">$forum</a><!--{if $forum}--><em> ({lang index_today}: $forum)</em><!--{/if}--></h2>
                                                      <p>{lang forum_threads}: $forum, {lang forum_posts}: $forum</p>
                                                      <p>{lang forum_lastpost}:
                                                                <!--{if is_array($forum['lastpost'])}-->
                                                                        <a href="redirect.php?tid=$forum&goto=lastpost#lastpost">$forum</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}-->
改為<!--{if $gid || $showforumlist == 'default'}-->
{template forumlist_default}
<!--{elseif empty($gid) && $showforumlist == 'straightdisplay'}-->
{template forumlist_straightdisplay}
<!--{/if}-->找
admin/forums.inc.php$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');
//社區直排顯示
找$forumfields['fup'] = $forum ? $fup : 0;
$forumfields['type'] = $forum['type'] == 'forum' ? 'sub' : 'forum';
$forumfields['name'] = $newforum;
$forumfields['status'] = 1;下加//社區直排顯示
$forumfields['straightdisplay'] = $forum['straightdisplay'];
//社區直排顯示找$query = $db->query("SELECT fid, type, inheritedmod FROM {$tablepre}forums WHERE fid='$fupnew'");改為//社區直排顯示
$query = $db->query("SELECT fid, type, inheritedmod,straightdisplay FROM {$tablepre}forums WHERE fid='$fupnew'");
//社區直排顯示找$fupadd = ", type='".($fup['type'] == 'forum' ? 'sub' : 'forum')."', fup='$fup'";改為
//社區直排顯示
$fupadd = ", type='".($fup['type'] == 'forum' ? 'sub' : 'forum')."', fup='$fup', straightdisplay='$fup'";
//社區直排顯示
注要: 安裝時,如果為非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=

運行系統管理插件 進行設置
頁: [1]
查看完整版本: 論壇版塊直排系統 v1.071