admin 2007-12-14 19:18
首页4格-随机图片调用+最新话题+最新回复+精华帖/本周热门/本月热门
[size=2][color=#0000ff]* 适用版本:dz 5.0正式版 (最好打完目前所有补丁)
* 原 作 者: 不祥
* 安装难度: 简单
* 数 据 表: 无
* 修改文件:index.php、discuz.htm
* 增加文件:pic.php、pic.htm、pixviewer.swf、slide.js
* [/color][color=red]注意:安装所有首页4格插件“子论坛”的标题最好不要加入颜色等代码,否则安装后版面会凌乱。[/color]
[/size][color=#ff0000][size=4]1、修改index.php
[/size][/color][size=2]找到:
[/size]复制内容到剪贴板 代码:[font=新宋体]require_once DISCUZ_ROOT.'./include/forum.func.php';[/font]
[size=12px]
下面添加:
[/size]复制内容到剪贴板 代码:[font=新宋体]require_once DISCUZ_ROOT.'./include/misc.func.php';[/font]
[size=12px]
继续找:
[/size]复制内容到剪贴板 代码:[font=新宋体]$newthreads = round(($timestamp - $lastvisit + 600) / 1000) * 1000;[/font]
[size=12px]
下面添加:
[/size]复制内容到剪贴板 代码:[font=新宋体]//---------------hack Meminfo start
if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 6.0")) {
$visitor_browser = "Internet Explorer 6.0";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 5.5")) {
$visitor_browser = "Internet Explorer 5.5";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 5.0")) {
$visitor_browser = "Internet Explorer 5.0";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 4.01")) {
$visitor_browser = "Internet Explorer 4.01";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NetCaptor")) {
$visitor_browser = "NetCaptor";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Netscape")) {
$visitor_browser = "Netscape";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Lynx")) {
$visitor_browser = "Lynx";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Opera")) {
$visitor_browser = "Opera";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Konqueror")) {
$visitor_browser = "Konqueror";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mozilla")) {
$visitor_browser = "Mozilla";
} else {
$visitor_browser = "其它";
}
//上面的是浏览器//
if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5.1")) {
$visitor_os = "Windows XP";
}elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5.2")) {
$visitor_os = "Windows Server 2003";
}elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5")) {
$visitor_os = "Windows 2000";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "4.9")) {
$visitor_os = "Windows ME";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 4")) {
$visitor_os = "Windows NT 4.0";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "98")) {
$visitor_os = "Windows 98";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "95")) {
$visitor_os = "Windows 95";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mac")) {
$visitor_os = "Mac";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Linux")) {
$visitor_os = "Linux";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Unix")) {
$visitor_os = "Unix";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "FreeBSD")) {
$visitor_os = "FreeBSD";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "SunOS")) {
$visitor_os = "SunOS";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "BeOS")) {
$visitor_os = "BeOS";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "OS/2")) {
$visitor_os = "OS/2";
} elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], ";PC")) {
$visitor_os = "Macintosh";
}elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "AIX")) {
$visitor_os = "AIX";
} else {
$visitor_os = "其他";
}
$mem_home = convertip($onlineip, $datadir = "./");
//info//
$colorarray = array('', 'red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'purple', 'gray');
//新贴//
$hack_cut_str =29; //修改标题显示字数
$hack_cut_strauthor = 9;
$new_post_threadlist = array();
$nthread = array();
$query = $db->query("SELECT t.*, f.name FROM {$tablepre}threads t, {$tablepre}forums f WHERE t.fid<>'$fid' AND f.fid=t.fid ORDER BY t.dateline DESC LIMIT 0, 8");
while($nthread = $db->fetch_array($query)) {
$nthread['forumname'] = $nthread['name'];
$nthread['view_subject'] = cutstr($nthread['subject'],$hack_cut_str);
$nthread['view_author'] = cutstr($nthread['author'],$hack_cut_strauthor);
$nthread['date']= gmdate("$dateformat $timeformat", $nthread['dateline'] + $timeoffset * 3600);
$nthread['lastreplytime']= gmdate("$dateformat $timeformat", $nthread[lastpost] + ($timeoffset * 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;
}
//新贴//
//新回覆
$hack_cut_str = 29; //修改标题显示字数
$hack_cut_strauthor = 9;
$new_reply_threadlist = array();
$rthread = array();
$query = $db->query("SELECT t.*, f.name FROM {$tablepre}threads t, {$tablepre}forums f WHERE t.fid<>'$fid' AND f.fid=t.fid AND t.closed NOT LIKE 'moved|%' AND t.replies !=0 ORDER BY t.lastpost DESC LIMIT 0, 8");
while($rthread = $db->fetch_array($query)) {
$rthread['forumname'] = $rthread['name'];
$rthread['view_subject'] = cutstr($rthread['subject'],$hack_cut_str);
$rthread['view_lastposter'] = cutstr($rthread['lastposter'],$hack_cut_strauthor);
$rthread['date']= gmdate("$dateformat $timeformat", $rthread['dateline'] + $timeoffset * 3600);
$rthread['lastreplytime']= gmdate("$dateformat $timeformat", $rthread[lastpost] + ($timeoffset * 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[] = $rthread;
}
//热帖//
//精华帖
$hack_cut_str =29; //修改标题显示字数
$hack_cut_strauthor = 9;
$new_digest_threadlist = array();
$dthread = array();
$query = $db->query("SELECT t.*, f.name FROM {$tablepre}threads t, {$tablepre}forums f WHERE digest>'0' AND t.fid<>'$fid' AND f.fid=t.fid ORDER BY t.dateline DESC LIMIT 0, 8"); //修改显示帖子条数
while($dthread = $db->fetch_array($query)) {
$dthread['forumname'] = $dthread['name'];
$dthread['view_subject'] = cutstr($dthread['subject'],$hack_cut_str);
$dthread['view_author'] = cutstr($dthread['author'],$hack_cut_strauthor);
$dthread['date']= gmdate("$dateformat $timeformat", $dthread['dateline'] + $timeoffset * 3600);
$dthread['lastreplytime']= gmdate("$dateformat $timeformat", $dthread[lastpost] + ($timeoffset * 3600));
if($dthread['highlight']) {
$string = sprintf('%02d', $dthread['highlight']);
$stylestr = sprintf('%03b', $string[0]);
$dthread['highlight'] = 'style="';
$dthread['highlight'] .= $stylestr[0] ? 'font-weight: bold;' : '';
$dthread['highlight'] .= $stylestr[1] ? 'font-style: italic;' : '';
$dthread['highlight'] .= $stylestr[2] ? 'text-decoration: underline;' : '';
$dthread['highlight'] .= $string[1] ? 'color: '.$colorarray[$string[1]] : '';
$dthread['highlight'] .= '"';
} else {
$dthread['highlight'] = '';
}
$new_digest_threadlist[] = $dthread;
}
//精华帖,四格代码结束//[/font]
2.打开/templates/default/discuz.htm找到: 复制内容到剪贴板 代码:[font=新宋体]<!--{if !empty($advlist['text'])}-->[/font]
在上面添加: 复制内容到剪贴板 代码:[font=新宋体]<!--首页四格开始-->
<div class="spaceborder" style="width: {TABLEWIDTH}">
<table cellspacing="{INNERBORDERWIDTH}" cellpadding="{TABLESPACE}" width="100%" align="center" >
<tr class="header">
<td class="header" width="25%" align="center"><b><img src={IMGDIR}/dot.gif BORDER=0>≡论坛图片≡</b></td>
<td class="header" width="25%" align="center"><b><img src={IMGDIR}/dot.gif BORDER=0>≡最新话题≡</b></td>
<td class="header" width="25%" align="center"><b><img src={IMGDIR}/dot.gif BORDER=0>≡最新回复≡</b></td>
<td class="header" width="25%" align="center"><b><img src={IMGDIR}/dot.gif BORDER=0>≡论坛精华≡</b></td>
</tr>
<tr>
<td class="altbg1" align="center"><iframe name="I1" src="pic.php" width="270" height="210" frameborder=0 scrolling=no marginwidth="9" marginheight="2" align="right"></iframe>
</td>
<td><!--{loop $new_post_threadlist $nthread}-->
<table border="0" width='100%' cellspacing="2">
<tr>
<td height="12" width='100%'><FONT face=Wingdings>z</FONT>
<!--{if $nthread[replies]}-->
<a href="viewthread.php?tid=$nthread[tid]" $nthread['highlight'] title="最新话题 {LF}所在论坛: $nthread[forumname]{LF}主题标题: $nthread[subject] {LF}主题作者: $nthread[author]{LF}发表时间: $nthread[date]{LF}浏览次数: $nthread[views] 次 {LF}回复次数: $nthread[replies] 次{LF}最后回复: $nthread[lastreplytime]{LF}{lang lastpost}: $nthread[lastposter]" >$nthread[view_subject]</a>
<!--{else}-->
<a href="viewthread.php?tid=$nthread[tid]" $nthread['highlight'] title="最新话题 {LF}所在论坛: $nthread[forumname]{LF}主题标题: $nthread[subject] {LF}主题作者: $nthread[author]{LF}发表时间{lang time}: $nthread[date]{LF}浏览次数: $nthread[views] 次 {LF}回复次数: $nthread[replies] 次{LF}{lang replies}: 暂时没有回复" >$nthread[view_subject]</a>
<!--{/if}-->
</td>
</tr>
</table>
<!--{/loop}--></td>
<td><!--{loop $new_reply_threadlist $rthread}-->
<table border="0" width='100%' cellspacing="2">
<tr>
<td height="12" width='100%'><FONT face=Wingdings>z</FONT> </font><a href="viewthread.php?tid=$rthread[tid]" $rthread['highlight'] title="最新回复 {LF}所在论坛: $rthread[forumname]{LF}主题标题: $rthread[subject]{LF}主题作者: $rthread[author]{LF}发表时间: $rthread[date]{LF}浏览次数: $rthread[views] 次{LF}回复次数: $rthread[replies] 次{LF}最后回复: $rthread[lastreplytime]{LF}{lang lastpost}: $rthread[lastposter]">$rthread[view_subject]</a></td>
</tr>
</table>
<!--{/loop}--></td>
<td>
<!--{loop $new_digest_threadlist $dthread}-->
<table border="0" width='100%' cellspacing="2">
<tr>
<td height=12 width='76%'><FONT face=Wingdings>z</FONT> </font><a href="viewthread.php?tid=$dthread[tid]" $dthread['highlight'] title="精华文章 {LF}所在论坛: $dthread[forumname]{LF}主题标题: $dthread[subject]{LF}主题作者: $dthread[author]{LF}发表时间: $dthread[date]{LF}浏览次数: $dthread[views] 次{LF}回复次数: $dthread[replies] 次{LF}最后回复: $dthread[lastreplytime]{LF}{lang lastpost}: $dthread[lastposter]">$dthread[view_subject]</a></td>
</tr>
</table>
<!--{/loop}--></td>
</tr>
</table></div>
<!--首页四格结束-->[/font]
上面的修改已经完成,可以连附件一起上传。
A、默认显示标题为10条,如果需要改变的,请在index.php文件里修改以下代码,
共有三处需要修改;把10改为你需要显示的标题数: 复制内容到剪贴板 代码:[font=新宋体]$query = $db->query("SELECT t.*, f.name FROM {$tablepre}threads t, {$tablepre}forums f WHERE t.fid<>'$fid' AND f.fid=t.fid AND t.closed NOT LIKE 'moved|%' AND t.replies !=0 ORDER BY t.lastpost DESC LIMIT 0, 10");[/font]
B、图片大小的调整:
(1)修改(之前已经改好的)discuz.htm文件,270和210这两个数便是,见下面的代码: 复制内容到剪贴板 代码:[font=新宋体]<td class="altbg1" align="center"><iframe name="I1" src="pic.php" width="270" height="210" frameborder=0 scrolling=no marginwidth="9" marginheight="2" align="right"></iframe>[/font]
(2)修改附件里面的pic.php文件,250和190这两个数便是,见下面的代码: 复制内容到剪贴板 代码:[font=新宋体]var focus_width=250
var focus_height=190[/font]
改动图片大小时请特别注意:
在图片下面有完整的帖子标题显示。discuz.htm的数值设定必须要比pic.php的数值大20,用于显示标题。如果两个文件的设定数值相等,则图片下面无法显示标题。
admin 2007-12-14 19:18
把“精华帖”改为“热门话题”的方法:
A、修改(已经改好的)discuz.htm
1、把下面的代码
复制内容到剪贴板代码:
<!--{loop $new_digest_threadlist $dthread}-->
<table border="0" width='100%' cellspacing="2">
<tr>
<td height=12 width='76%'><FONT face=Wingdings>z</FONT> </font><a href="viewthread.php?tid=$dthread[tid]" $dthread['highlight'] title="精华文章 {LF}所在论坛: $dthread[forumname]{LF}主题标题: $dthread[subject]{LF}主题作者: $dthread[author]{LF}发表时间: $dthread[date]{LF}浏览次数: $dthread[views] 次{LF}回复次数: $dthread[replies] 次{LF}最后回复: $dthread[lastreplytime]{LF}{lang lastpost}: $dthread[lastposter]">$dthread[view_subject]</a></td>
替换为
复制内容到剪贴板代码:
<!--{loop $new_hot_threadlist $mthread}-->
<table border="0" width='100%' cellspacing="2">
<tr>
<td height="12" width='100%'><FONT face=Wingdings>z</FONT> </font><a href="viewthread.php?tid=$mthread[tid]" $mthread['highlight'] title="热门话题 {LF}所在论坛: $mthread[forumname]{LF}主题标题: $mthread[subject]{LF}主题作者: $mthread[author]{LF}发表时间: $mthread[date]{LF}浏览次数: $mthread[views] 次{LF}回复次数: $mthread[replies] 次{LF}最后回复: $mthread[lastreplytime]{LF}{lang lastpost}: $mthread[lastposter]">$mthread[view_subject]</a></td>
2、把相应的标题改掉
复制内容到剪贴板代码:
<td class="header" width="25%" align="center"><b><img src={IMGDIR}/dot.gif BORDER=0>≡论坛精华≡</b></td>
改为:
复制内容到剪贴板代码:
<td class="header" width="25%" align="center"><b><img src={IMGDIR}/dot.gif BORDER=0>≡论坛热门≡</b></td>
B、修改(已经改好的)index.php
将精华帖的代码
复制内容到剪贴板代码:
//精华帖
$hack_cut_str =28; //修改标题显示字数
$hack_cut_strauthor = 9;
$new_digest_threadlist = array();
$dthread = array();
$query = $db->query("SELECT t.*, f.name FROM {$tablepre}threads t, {$tablepre}forums f WHERE digest>'0' AND t.fid<>'$fid' AND f.fid=t.fid ORDER BY t.dateline DESC LIMIT 0, 10"); //修改显示帖子条数
while($dthread = $db->fetch_array($query)) {
$dthread['forumname'] = $dthread['name'];
$dthread['view_subject'] = cutstr($dthread['subject'],$hack_cut_str);
$dthread['view_author'] = cutstr($dthread['author'],$hack_cut_strauthor);
$dthread['date']= gmdate("$dateformat $timeformat", $dthread['dateline'] + $timeoffset * 3600);
$dthread['lastreplytime']= gmdate("$dateformat $timeformat", $dthread[lastpost] + ($timeoffset * 3600));
if($dthread['highlight']) {
$string = sprintf('%02d', $dthread['highlight']);
$stylestr = sprintf('%03b', $string[0]);
$dthread['highlight'] = 'style="';
$dthread['highlight'] .= $stylestr[0] ? 'font-weight: bold;' : '';
$dthread['highlight'] .= $stylestr[1] ? 'font-style: italic;' : '';
$dthread['highlight'] .= $stylestr[2] ? 'text-decoration: underline;' : '';
$dthread['highlight'] .= $string[1] ? 'color: '.$colorarray[$string[1]] : '';
$dthread['highlight'] .= '"';
} else {
$dthread['highlight'] = '';
}
$new_digest_threadlist[] = $dthread;
}
//精华帖,四格代码结束//
//热帖
$hack_cut_str = 28; //修改标题显示字数
$hack_cut_strauthor = 9;
$new_hot_threadlist = array();
$mthread = array();
$query = $db->query("SELECT t.*, f.name FROM {$tablepre}threads t, {$tablepre}forums f WHERE t.fid<>'$fid' AND f.fid=t.fid AND t.closed NOT LIKE 'moved|%' AND t.replies !=0 ORDER BY t.views DESC LIMIT 0, 10"); //修改显示帖子条数
while($mthread = $db->fetch_array($query)) {
$mthread['forumname'] = $mthread['name'];
$mthread['view_subject'] = cutstr($mthread['subject'],$hack_cut_str);
$mthread['view_lastposter'] = cutstr($mthread['lastposter'],$hack_cut_strauthor);
$mthread['date']= gmdate("$dateformat $timeformat", $mthread['dateline'] + $timeoffset * 3600);
$mthread['lastreplytime']= gmdate("$dateformat $timeformat", $mthread[lastpost] + ($timeoffset * 3600));
if($mthread['highlight']) {
$string = sprintf('%02d', $mthread['highlight']);
$stylestr = sprintf('%03b', $string[0]);
$mthread['highlight'] = 'style="';
$mthread['highlight'] .= $stylestr[0] ? 'font-weight: bold;' : '';
$mthread['highlight'] .= $stylestr[1] ? 'font-style: italic;' : '';
$mthread['highlight'] .= $stylestr[2] ? 'text-decoration: underline;' : '';
$mthread['highlight'] .= $string[1] ? 'color: '.$colorarray[$string[1]] : '';
$mthread['highlight'] .= '"';
} else {
$mthread['highlight'] = '';
}
$new_hot_threadlist[] = $mthread;
}
//热帖,四格代码结束//
zxlovest 2008-10-12 01:10
我在顶贴~!狂顶狂顶。~
AlexGuo 2008-10-18 15:10
文笔流畅,修辞得体,深得魏晋诸朝遗风,更将唐风宋骨发扬得入木三分,能在有生之年看见楼主的这个帖子。实在是我三生之幸啊。