|
插件名稱:【超級美化】AL8 首頁六格顯示 for Discuz 6.0.0
適合版本:Discuz 6.0.0
原作者: alan888
出處:http://www.alan888.com/Discuz/vi ... 7&highlight=al8
DZ 5.0補增益版:By djkevin (在AL8首頁4格的個人資料加入個人圖像 For 5.0)
DZ 5.5修改整理:By 范倫鐵諾(修正5.5與5.0不同處並整理)
DZ 5.5超級美化:By 范倫鐵諾(2007.04.02完成)
DZ 6.0修改美化:By 范倫鐵諾(2007.09.30完成)
演示:http://www.k-song.com/index.php
數據庫升級:無
修改模板:1個
修改PHP:8個
加入文件: foruminfo.htm 及圖片(附件1&2)
修改文件:
/index.php
/logging.php
/topicadmin.php
/register.php
/include/newthread.inc.php
/include/newreply.inc.php
/include/counter.inc.php
/include/cache.func.php
/templates/default/discuz.htm
解說:
因為6.0的改動有滿多地方的,所以自身並未急著於第一時間在
官方釋出DZ 6.0正式版時同時間進行升級,直到近日有需多站
長友人詢問DZ 6.0的手動方式修正,加上研究6.0有一段時間後,
這才開始修改,這次與5.5版的修正方式並無太大差異,除了細部
較不同的字串外,對模板也稍微進行了美化(增加部份圖及格線調整)
,最後,也是一樣的原因,這是由AL8衍生的六格,短期內只會分享
在AL8,希望各位會喜歡這插件。題外話一下,目前正整合更新的首頁
N格,會做更大幅度的修正,預計10月底釋出,有相關建議的歡迎指教
提出。
By 【K歌黨】系統顧問暨管理顧問@范倫鐵諾
注意:
『1』此版安裝程繁雜,安裝前請記得備份,初學者需再詳細確認步驟。
『2』修正之前熱門精華無法自動更新問題。
『3』盼站長注意各論壇編碼,勿單純以筆記本做編碼存檔動作,修正過的請善用ConvertZ軟體轉碼後再上傳。
『4』此版本小弟自我測試無錯誤,若有因為過程上造成使用者的問題或其它損害,小弟並不負責任何責任
『5』歡迎指教。
說明:
1. 修改 include/cache.func.php
修改完成此文件後請即時到後台→更新緩存
找- 'medals' => array('medals'),
複製代碼 更換為- 'medals' => array('medals'),
- 'newtopic' => array('newtopic'),
- 'newreply' => array('newreply'),
- 'topdigest' => array('topdigest'),
複製代碼 再找- case 'medals':
- $table = 'medals';
- $cols = 'medalid, name, image';
- $c;
- break;
複製代碼 在下面加上 (注意填妥"填上不需要顯示回帖區域的 fid 編號, 以逗號作分格, 最後一個不用加上逗號")
填上不需要顯示帖子區域
由於使用快取檔型式, 故某些私密區不能判斷會員權限來顯示發帖及回帖, 所以要先修改及取代下紅字部份 "填上不需要顯示帖子區域的 fid 編號, 以逗號作分格, 最後一個不用加上逗號" 部份, 例如希望不顯示 fid 1,3,5 便填上 "$fids="1,3,5";"
如果希望全部顯示者, 請將下面三段的 NOT IN ($fids) (藍色字顯示部份)刪除, 否則會出現數據錯誤的顯示- case newtopic:
- $table = 'threads t';
- $cols = "t.tid, t.typeid, t.subject, t.author, t.dateline, t.views, t.replies, t.lastpost, t.lastposter, t.highlight, f.name, tt.name AS idname";
- $fids="填上不需要顯示回帖區域的 fid 編號, 以逗號作分格, 最後一個不用加上逗號";
- $c;
- break;
- case newreply:
- $table = 'threads t';
- $cols = "t.tid, t.typeid, t.subject, t.author, t.dateline, t.views, t.replies, t.lastpost, t.lastposter, t.highlight, f.name, tt.name AS idname";
- $fids="填上不需要顯示回帖區域的 fid 編號, 以逗號作分格, 最後一個不用加上逗號";
- $c;
- break;
- case topdigest:
- $table = 'threads t';
- $cols = "t.tid, t.typeid, t.subject, t.author, t.dateline, t.views, t.replies, t.lastpost, t.lastposter, t.highlight, f.name, tt.name AS idname";
- $fids="填上不需要顯示回帖區域的 fid 編號, 以逗號作分格, 最後一個不用加上逗號";
- $c;
- break;
- case todayvisit:
- $table = 'members';
- $cols = "COUNT(*)";
- $datecut = time() - (3600 * 24);
- $c;
- break;
複製代碼 找- $GLOBALS['totalmembers'] = $data['totalmembers'] = $db->result($query, 0);
複製代碼 在下面加上- $datecut = time() - (3600 * 24);
- $query = $db->query("SELECT COUNT(*) FROM {$tablepre}members WHERE regdate>='$datecut'");
- $GLOBALS['todaynewmems'] = $data['todaynewmems'] = $db->result($query, 0);
複製代碼 找- case 'forumlinks':
- global $forumlinkstatus;
複製代碼 上面加上- case 'newreply':
- $hack_cut_str = 36;
- $new_reply_threadlist = array();
- $rthread = array();
- $colorarray = array('', 'red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'purple', 'gray');
- while($rthread = $db->fetch_array($query)){
- $rthread['forumname'] = $rthread['name'];
- $rthread['view_subject'] = $rthread[idname] ? cutstr( "$rthread[idname] $rthread[subject]",$hack_cut_str) : cutstr($rthread['subject'],$hack_cut_str);
- $rthread['subject'] = cutstr($rthread['subject'],46);
- $rthread['date']= gmdate('Y-n-j G:i', $rthread['dateline'] + 8 * 3600);
- $rthread['lastreplytime']= gmdate('Y-n-j G:i', $rthread['lastpost'] + 8 * 3600);
- if($rthread['highlight']) {
- $string = sprintf('%02d', $rthread['highlight']);
- $stylestr = sprintf('%03b', $string[0]);
- $rthread['highlight'] = 'style="';
- $rthread['highlight'] .= $stylestr[0] ? 'font-weight: bold;' : '';
- $rthread['highlight'] .= $stylestr[1] ? 'font-style: italic;' : '';
- $rthread['highlight'] .= $stylestr[2] ? 'text-decoration: underline;' : '';
- $rthread['highlight'] .= $string[1] ? 'color: '.$colorarray[$string[1]] : '';
- $rthread['highlight'] .= '"';
- } else {
- $rthread['highlight'] = '';
- }
- $new_reply_threadlist = "<a href=\"redirect.php?tid=$rthread[tid]&goto=lastpost#lastpost\" title=\"論壇rthread[forumname]\r\n標題rthread[subject]\r\n作者rthread[author]\r\n發表時間rthread[date]\r\n瀏覽次數rthread[views] 次\r\n回覆rthread[replies] 次\r\n最後回覆rthread[lastreplytime]\r\n最後發表rthread[lastposter]\" $rthread[highlight]>$rthread[view_subject]</a>
- ";
- $data[] = array('content' => $new_reply_threadlist);
- }
- break;
- case 'newtopic':
- $hack_cut_str = 36;
- $new_post_threadlist = array();
- $nthread = array();
- $colorarray = array('', 'red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'purple', 'gray');
- while($nthread = $db->fetch_array($query)){
- $nthread['forumname'] = $nthread['name'];
- $nthread['view_subject'] = $nthread[idname] ? cutstr( "$nthread[idname] $nthread[subject]",$hack_cut_str) : cutstr($nthread['subject'],$hack_cut_str);
- $nthread['subject'] = cutstr($nthread['subject'],46);
- $nthread['date']= gmdate('Y-n-j G:i', $nthread['dateline'] + 8 * 3600);
- $nthread['lastreplytime']= gmdate('Y-n-j G:i', $nthread[lastpost] + 8 * 3600);
- if($nthread['highlight']) {
- $string = sprintf('%02d', $nthread['highlight']);
- $stylestr = sprintf('%03b', $string[0]);
- $nthread['highlight'] = 'style="';
- $nthread['highlight'] .= $stylestr[0] ? 'font-weight: bold;' : '';
- $nthread['highlight'] .= $stylestr[1] ? 'font-style: italic;' : '';
- $nthread['highlight'] .= $stylestr[2] ? 'text-decoration: underline;' : '';
- $nthread['highlight'] .= $string[1] ? 'color: '.$colorarray[$string[1]] : '';
- $nthread['highlight'] .= '"';
- } else {
- $nthread['highlight'] = '';
- }
- $new_post_threadlist = $nthread[replies] ? "<a href=\"redirect.php?tid=$nthread[tid]&goto=lastpost#lastpost\" title=\"論壇nthread[forumname]\r\n標題nthread[subject]\r\n作者nthread[author]\r\n發表時間nthread[date]\r\n瀏覽次數nthread[views] 次 \r\n回覆nthread[replies] 次\r\n最後回覆nthread[lastreplytime]\r\n最後發表nthread[lastposter]\" $nthread[highlight] >$nthread[view_subject]</a>
- " : "<a href=\"redirect.php?tid=$nthread[tid]&goto=lastpost#lastpost\" title=\"論壇nthread[forumname]\r\n標題nthread[subject]\r\n作者nthread[author]\r\n發表時間nthread[date]\r\n瀏覽次數nthread[views] 次\r\n回覆: 暫時沒有回覆\" $nthread[highlight] >$nthread[view_subject]</a>
- ";
- $data[] = array('content' => $new_post_threadlist);
- }
- break;
- case 'topdigest':
- $hack_cut_str = 75;
- $top_digest_threadlist = array();
- $rthread = array();
- $colorarray = array('', 'red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'purple', 'gray');
- while($rthread = $db->fetch_array($query)){
- $rthread['forumname'] = $rthread['name'];
- $rthread['view_subject'] = $rthread[idname] ? cutstr( "$rthread[idname] $rthread[subject]",$hack_cut_str) : cutstr($rthread['subject'],$hack_cut_str);
- $rthread['subject'] = cutstr($rthread['subject'],46);
- $rthread['date']= gmdate('Y-n-j G:i', $rthread['dateline'] + 8 * 3600);
- $rthread['lastreplytime']= gmdate('Y-n-j G:i', $rthread['lastpost'] + 8 * 3600);
- if($rthread['highlight']) {
- $string = sprintf('%02d', $rthread['highlight']);
- $stylestr = sprintf('%03b', $string[0]);
- $rthread['highlight'] = 'style="';
- $rthread['highlight'] .= $stylestr[0] ? 'font-weight: bold;' : '';
- $rthread['highlight'] .= $stylestr[1] ? 'font-style: italic;' : '';
- $rthread['highlight'] .= $stylestr[2] ? 'text-decoration: underline;' : '';
- $rthread['highlight'] .= $string[1] ? 'color: '.$colorarray[$string[1]] : '';
- $rthread['highlight'] .= '"';
- } else {
- $rthread['highlight'] = '';
- }
- $top_digest_threadlist = "<a href=\"redirect.php?tid=$rthread[tid]&goto=lastpost#lastpost\" title=\"論壇rthread[forumname]\r\n標題rthread[subject]\r\n作者rthread[author]\r\n發表時間rthread[date]\r\n瀏覽次數rthread[views] 次\r\n回覆rthread[replies] 次\r\n最後回覆rthread[lastreplytime]\r\n最後發表rthread[lastposter]\" $rthread[highlight]>$rthread[view_subject]</a>
- ";
- $data[] = array('content' => $top_digest_threadlist);
- }
- break;
複製代碼 2. 修改 include/newthread.inc.php
找- showmessage('post_newthread_succeed', "viewthread.php?tid=$tid&extra=$extra".(!empty($frombbs) ? "&frombbs=$frombbs" : ''));
複製代碼 在上面加上- require DISCUZ_ROOT.'./include/cache.func.php';
- updatecache('newtopic');
複製代碼 3. 修改 include/newreply.inc.php
找- showmessage($replymessage, "viewthread.php?tid=$tid&pid=$pid&page=".(@ceil(($thread['special'] ? $thread['replies'] + 1 thread['replies'] + 2) / $ppp))."&extra=$extra#pid$pid");
複製代碼 在上面加上- require DISCUZ_ROOT.'./include/cache.func.php';
- updatecache(array('newreply', 'newtopic'));
複製代碼 4. 修改 include/counter.inc.php
找- if(!$sessionexists) {
- if(strpos($visitor['agent'], 'Netscape')) {
- $visitor['browser'] = 'Netscape';
- } elseif(strpos($visitor['agent'], 'Lynx')) {
- $visitor['browser'] = 'Lynx';
- } elseif(strpos($visitor['agent'], 'Opera')) {
- $visitor['browser'] = 'Opera';
- } elseif(strpos($visitor['agent'], 'Konqueror')) {
- $visitor['browser'] = 'Konqueror';
- } elseif(strpos($visitor['agent'], 'MSIE')) {
- $visitor['browser'] = 'MSIE';
- } elseif(substr($visitor['agent'], 0, 7) == 'Mozilla') {
- $visitor['browser'] = 'Mozilla';
- } else {
- $visitor['browser'] = 'Other';
- }
- if(strpos($visitor['agent'], 'Win')) {
- $visitor['os'] = 'Windows';
- } elseif(strpos($visitor['agent'], 'Mac')) {
- $visitor['os'] = 'Mac';
- } elseif(strpos($visitor['agent'], 'Linux')) {
- $visitor['os'] = 'Linux';
- } elseif(strpos($visitor['agent'], 'FreeBSD')) {
- $visitor['os'] = 'FreeBSD';
- } elseif(strpos($visitor['agent'], 'SunOS')) {
- $visitor['os'] = 'SunOS';
- } elseif(strpos($visitor['agent'], 'OS/2')) {
- $visitor['os'] = 'OS/2';
- } elseif(strpos($visitor['agent'], 'AIX')) {
- $visitor['os'] = 'AIX';
- } elseif(preg_match("/(Bot|Crawl|Spider)/i", $visitor['agent'])) {
- $visitor['os'] = 'Spiders';
- } else {
- $visitor['os'] = 'Other';
複製代碼 更換為- if(!$sessionexists || $discuz_uid) {
- if(strpos($visitor['agent'], "MSIE 7.0")) {
- $visitor_browser = "Internet Explorer 7.0";
- $visitor['browser'] = 'MSIE';
- } elseif(strpos($visitor['agent'], "MSIE 6.0")) {
- $visitor_browser = "Internet Explorer 6.0";
- $visitor['browser'] = 'MSIE';
- } elseif(strpos($visitor['agent'], "MSIE 5.5")) {
- $visitor_browser = "Internet Explorer 5.5";
- $visitor['browser'] = 'MSIE';
- } elseif(strpos($visitor['agent'], "MSIE 5.0")) {
- $visitor_browser = "Internet Explorer 5.0";
- $visitor['browser'] = 'MSIE';
- } elseif(strpos($visitor['agent'], "MSIE 4.01")) {
- $visitor_browser = "Internet Explorer 4.01";
- $visitor['browser'] = 'MSIE';
- } elseif(strpos($visitor['agent'], "Netscape")) {
- $visitor_browser = "Netscape";
- $visitor['browser'] = 'Netscape';
- } elseif(strpos($visitor['agent'], "Lynx")) {
- $visitor_browser = "Lynx";
- $visitor['browser'] = 'Lynx';
- } elseif(strpos($visitor['agent'], "Opera")) {
- $visitor_browser = "Opera";
- $visitor['browser'] = 'Opera';
- } elseif(strpos($visitor['agent'], "Konqueror")) {
- $visitor_browser = "Konqueror";
- $visitor['browser'] = 'Konqueror';
- } elseif(strpos($visitor['agent'], "Firefox")) {
- $visitor_browser = "Firefox";
- $visitor['browser'] = 'Mozilla';
- } elseif(strpos($visitor['agent'], "Mozilla/5.0")) {
- $visitor_browser = "Mozilla";
- $visitor['browser'] = 'Mozilla';
- } else {
- $visitor_browser = "其它";
- $visitor['browser'] = 'Other';
- }
- if(strpos($visitor['agent'], "NT 5.1")) {
- if(strpos($visitor['agent'], "SV1")){
- $visitor_os = "Windows XP SP2";
- $visitor['os'] = 'Windows';
- }else{
- $visitor_os = "Windows XP";
- $visitor['os'] = 'Windows';
- }
- }elseif(strpos($visitor['agent'], "NT 6.0")) {
- $visitor_os = "Win Vista";
- $visitor['os'] = 'Windows';
- }elseif(strpos($visitor['agent'], "NT 5.2")) {
- $visitor_os = "Windows Server 2003";
- $visitor['os'] = 'Windows';
- }elseif(strpos($visitor['agent'], "NT 5")) {
- $visitor_os = "Windows 2000";
- $visitor['os'] = 'Windows';
- } elseif(strpos($visitor['agent'], "4.9")) {
- $visitor_os = "Windows ME";
- $visitor['os'] = 'Windows';
- } elseif(strpos($visitor['agent'], "NT 4")) {
- $visitor_os = "Windows NT 4.0";
- $visitor['os'] = 'Windows';
- } elseif(strpos($visitor['agent'], "98")) {
- $visitor_os = "Windows 98";
- $visitor['os'] = 'Windows';
- } elseif(strpos($visitor['agent'], "95")) {
- $visitor_os = "Windows 95";
- $visitor['os'] = 'Windows';
- } elseif(strpos($visitor['agent'], "Mac")) {
- $visitor_os = "Mac";
- $visitor['os'] = 'Mac';
- } elseif(strpos($visitor['agent'], "Linux")) {
- $visitor_os = "Linux";
- $visitor['os'] = 'Linux';
- } elseif(strpos($visitor['agent'], "Unix")) {
- $visitor_os = "Unix";
- $visitor['os'] = 'Other';
- } elseif(strpos($visitor['agent'], "FreeBSD")) {
- $visitor_os = "FreeBSD";
- $visitor['os'] = 'FreeBSD';
- } elseif(strpos($visitor['agent'], "SunOS")) {
- $visitor_os = "SunOS";
- $visitor['os'] = 'SunOS';
- } elseif(strpos($visitor['agent'], "OS/2")) {
- $visitor_os = "OS/2";
- $visitor['os'] = 'OS/2';
- }elseif(strpos($visitor['agent'], "AIX")) {
- $visitor_os = "AIX";
- $visitor['os'] = 'AIX';
- } elseif(preg_match("/(Bot|Crawl|Spider)/i", $visitor['agent'])) {
- $visitor_os = "Spiders";
- $visitor['os'] = 'Spiders';
- } else {
- $visitor_os = "其他";
- $visitor['os'] = 'Other';
- }
複製代碼 5. 修改 topicadmin.php
找 (第一段約第 15 行那句)- require_once DISCUZ_ROOT.'./include/misc.func.php';
複製代碼 在下面加上- require_once DISCUZ_ROOT.'./include/cache.func.php';
複製代碼 找- showmessage((isset($resultarray['message']) ? $resultarray['message'] : 'admin_succeed'), $resultarray['redirect']);
複製代碼 在上面加上- updatecache(array('newreply', 'newtopic', 'topdigest'));
複製代碼 6. 修改 logging.php
找在下面加上- require_once DISCUZ_ROOT.'./include/cache.func.php';
- updatecache('todayvisit');
複製代碼 7. 修改 index.php
找- $rsshead = $rssstatus ? ('<link rel="alternate" type="application/rss+xml" title="'.$bbname.'" href="'.$boardurl.'rss.php?auth='.$rssauth."\" />\n") : '';
複製代碼 下方加入- //------------圖像 by keven
- $member_query = $db->query("SELECT * FROM {$tablepre}members m, {$tablepre}memberfields mf
- WHERE m.uid='$discuz_uid' AND mf.uid='$discuz_uid'");
- $member = $db->fetch_array($member_query);
- $member['lastvisit'] = gmdate("$dateformat $timeformat", $member['lastvisit'] + ($timeoffset * 3600));
- $member['usernameenc'] = rawurlencode($member['username']);
- $allowfriendcheck = array($member['allowfriend'] => 'checked');
- $avatypecheck = array($member['avatype'] => 'checked');
- if(!$member[avatar]){
- $member[avatar]="images/avatars/noavatar.gif";
- }
- //-------------圖像 END
複製代碼 找- $catlist = $forumlist = $sublist = $pmlist = array();
複製代碼 在上面加上- //-----------hack AL8 Info
- if(!$statstatus && $discuz_uid){
- require_once DISCUZ_ROOT.'./include/counter.inc.php';
- }
- require_once DISCUZ_ROOT.'./include/misc.func.php';
- $mem_home = convertip($onlineip, $datadir = "./");
- @include './forumdata/cache/cache_newtopic.php';
- @include './forumdata/cache/cache_newreply.php';
- @include './forumdata/cache/cache_topdigest.php';
- //-----------hack AL8 Info End
複製代碼 找- 'forumlinks', 'birthdays', 'supe_updateusers'
複製代碼 在後面插入9. 修改 register.php
找- $styleid = $styleid ? $styleid _DCACHE['settings']['styleid'];
複製代碼 在下面加上- $datecut = time() - (3600 * 24);
- $query = $db->query("SELECT COUNT(*) FROM {$tablepre}members WHERE regdate>='$datecut'");
- $todaynewmems = $db->result($query, 0);
複製代碼 找在上面加上- $_DCACHE['settings']['todaynewmems'] = $todaynewmems;
複製代碼 8. 修改 discuz 模板
找- <table summary="HeadBox" class="portalbox" cellpadding="0" cellspacing="1">
- <tr>
- <!--{if $supeitemsstatus || $hottagstatus}-->
複製代碼 上面加 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?註冊
x
|