|

- 帖子
- 132
- 积分
- 190
- 威望
- 3
- 金币
- 36 个
- 体力
- 133
- 注册时间
- 2006-10-13
|

FOR Discuz!5.5.0社区发贴之星 安装的朋友顶一下
插件名称:社区发贴之星(今日+昨日+本周+本月+本年发贴排行)
插件作者:33201
插件修改作者:型仔
安装难度:中
插件演示地址:http://www.xz1069.com/index.php这里说明下,按下面要求做出来的位置是在联盟论坛上方的,我这里是自己调四格上方去的
版权归插件原作者33201所有- 插件功能:
- 新增加的功能:
- 1.首页显示今日+本周+本月+本年四类发帖状元、榜眼、探花,不分男女!可切换显示,有效增加会员
- 的发贴 热情和参与度
- 2.首页显示今日+本周+本月+本年发贴TOP10
- 3.增加了一个单独的社区明星页面显示今日+昨日+本周+本月+本年五类发帖状元、榜眼、探花以及发贴TOP10
- 4.修正了原来的状元、榜眼或探花不存在时的空白问题,在不存在时显示为虚位以待
- 5.全部内容生成缓存cache,不增加任何查询,有效减轻服务器负担
- 原来的功能:
- 1.首页显示当日发帖状元、榜眼、探花,不分男女!
- 2.显示当日发帖最多的十位会员!
- 3.加入收缩展开功能(默认发帖状元、榜眼、探花三栏隐藏的,当然你也可以修改为展开的)!
复制代码 插件安装步骤:
1.上传附件!
2.编辑文件include/cache.func.php
2.1查找:- 'medals' => array('medals'),
复制代码 在其上面加- 'poststar' => array('daystar', 'yestodaystar','weekstar', 'monthstar', 'yearstar'),
复制代码 2.2查找:- case 'medals':
- $table = 'medals';
- $cols = 'medalid, name, image';
- $conditions = "WHERE available='1'";
- break;
复制代码 在其上面加- //===============社区明星BY 33201 开始
- case 'daystar':
- $month=date(n);
- $date=date(j);
- $year=date(Y);
- $time=mktime(0,0,0,$month,$date,$year);
- $table = 'posts p';
- $cols = 'count(p.pid) as num,p.author,p.authorid,m.uid,m.credits,m.posts,m.digestposts ,me.avatar,m.oltime,me.avatarwidth,me.avatarheight';
- $conditions = "left join {$tablepre}members m on p.authorid=m.uid left join {$tablepre}memberfields me on p.authorid=me.uid where p.dateline>$time group by p.authorid order by num desc limit 0,10";
- break;
- case 'yestodaystar':
- $month=date(n);
- $date=date(j);
- $year=date(Y);
- $time=mktime(0,0,0,$month,$date,$year);
- $ytime=mktime(0,0,0,$month,$date-1,$year);
- $table = 'posts p';
- $cols = 'count(p.pid) as num,p.author,p.authorid,m.uid,m.credits,m.posts,m.digestposts ,me.avatar,m.oltime,me.avatarwidth,me.avatarheight';
- $conditions = "left join {$tablepre}members m on p.authorid=m.uid left join cdb_memberfields me on p.authorid=me.uid where p.dateline<=$time and p.dateline>$ytime group by p.authorid order by num desc limit 0,10";
- break;
- case 'weekstar':
- $month=date(n);
- $date=date(j);
- $year=date(Y);
- $week=date(w);
- $time=mktime(0,0,0,$month,$date,$year);
- $weektime=mktime(0,0,0,$month,$date-$week,$year);
- $table = 'posts p';
- $cols = 'count(p.pid) as num,p.author,p.authorid,m.uid,m.credits,m.posts,m.digestposts ,me.avatar,m.oltime,me.avatarwidth,me.avatarheight';
- $conditions = "left join {$tablepre}members m on p.authorid=m.uid left join {$tablepre}memberfields me on p.authorid=me.uid where p.dateline>=$weektime group by p.authorid order by num desc limit 0,10";
- break;
- case 'monthstar':
- $month=date(n);
- $year=date(Y);
- $monthtime=mktime(0,0,0,$month,1,$year);
- $table = 'posts p';
- $cols = 'count(p.pid) as num,p.author,p.authorid,m.uid,m.credits,m.posts,m.digestposts ,me.avatar,m.oltime,me.avatarwidth,me.avatarheight';
- $conditions = "left join {$tablepre}members m on p.authorid=m.uid left join {$tablepre}memberfields me on p.authorid=me.uid where p.dateline>=$monthtime group by p.authorid order by num desc limit 0,10";
- break;
-
- case 'yearstar':
- $year=date(Y);
- $yeartime=mktime(0,0,0,1,1,$year);
- $table = 'posts p';
- $cols = 'count(p.pid) as num,p.author,p.authorid,m.uid,m.credits,m.posts,m.digestposts ,me.avatar,m.oltime,me.avatarwidth,me.avatarheight';
- $conditions = "left join {$tablepre}members m on p.authorid=m.uid left join {$tablepre}memberfields me on p.authorid=me.uid where p.dateline>=$yeartime group by p.authorid order by num desc limit 0,10";
- break;
- //===================社区明星BY 33201 结束
复制代码 2.3 查找:- case 'settings':
- $data['qihoo_links'] = array();
- while($setting = $db->fetch_array($query))
复制代码 在其上面加- //===================社区明星BY 33201 开始
- case 'daystar':
- while($toppost = $db->fetch_array($query)) {
- $toppost['author'] = $toppost['author'] ? $toppost['author'] : '游客';
- $toppost['authorid'] = $toppost['authorid'] ? $toppost['authorid'] : '游客';
- $toppost['avatar'] = $toppost['avatar'] ? $toppost['avatar'] : 'images/nopic.gif';
- $toppost['avatarwidth'] = $toppost['avatarwidth'] ? $toppost['avatarwidth'] : '80';
- $toppost['avatarheight'] = $toppost['avatarheight'] ? $toppost['avatarheight'] : '80';
- $data[] = $toppost;
- }
- break;
- case 'yestodaystar':
- while($toppost = $db->fetch_array($query)) {
- $toppost['author'] = $toppost['author'] ? $toppost['author'] : '游客';
- $toppost['authorid'] = $toppost['authorid'] ? $toppost['authorid'] : '游客';
- $toppost['avatar'] = $toppost['avatar'] ? $toppost['avatar'] : 'images/nopic.gif';
- $toppost['avatarwidth'] = $toppost['avatarwidth'] ? $toppost['avatarwidth'] : '80';
- $toppost['avatarheight'] = $toppost['avatarheight'] ? $toppost['avatarheight'] : '80';
- $data[] = $toppost;
- }
- break;
- case 'weekstar':
- while($toppost = $db->fetch_array($query)) {
- $toppost['author'] = $toppost['author'] ? $toppost['author'] : '游客';
- $toppost['authorid'] = $toppost['authorid'] ? $toppost['authorid'] : '游客';
- $toppost['avatar'] = $toppost['avatar'] ? $toppost['avatar'] : 'images/nopic.gif';
- $toppost['avatarwidth'] = $toppost['avatarwidth'] ? $toppost['avatarwidth'] : '80';
- $toppost['avatarheight'] = $toppost['avatarheight'] ? $toppost['avatarheight'] : '80';
- $data[] = $toppost;
- }
- break;
- case 'monthstar':
- while($toppost = $db->fetch_array($query)) {
- $toppost['author'] = $toppost['author'] ? $toppost['author'] : '游客';
- $toppost['authorid'] = $toppost['authorid'] ? $toppost['authorid'] : '游客';
- $toppost['avatar'] = $toppost['avatar'] ? $toppost['avatar'] : 'images/nopic.gif';
- $toppost['avatarwidth'] = $toppost['avatarwidth'] ? $toppost['avatarwidth'] : '80';
- $toppost['avatarheight'] = $toppost['avatarheight'] ? $toppost['avatarheight'] : '80';
- $data[] = $toppost;
- }
- break;
- case 'yearstar':
- while($toppost = $db->fetch_array($query)) {
- $toppost['author'] = $toppost['author'] ? $toppost['author'] : '游客';
- $toppost['authorid'] = $toppost['authorid'] ? $toppost['authorid'] : '游客';
- $toppost['avatar'] = $toppost['avatar'] ? $toppost['avatar'] : 'images/nopic.gif';
- $toppost['avatarwidth'] = $toppost['avatarwidth'] ? $toppost['avatarwidth'] : '80';
- $toppost['avatarheight'] = $toppost['avatarheight'] ? $toppost['avatarheight'] : '80';
- $data[] = $toppost;
- }
- break;
- //=====================社区明星BY 33201 结束
复制代码 3.编辑文件include/newthread.inc.php
查找- updatepostcredits('+', $discuz_uid, $postcredits);
复制代码 在其下面加- require_once DISCUZ_ROOT.'./include/cache.func.php';
- updatecache('daystar');
复制代码 4.编辑文件include/newreply.inc.php
查找- updatepostcredits('+', $discuz_uid, $replycredits);
复制代码 在其下面加- require_once DISCUZ_ROOT.'./include/cache.func.php';
- updatecache('daystar');
复制代码 5.编辑文件topicadmin.php
查找- showmessage((isset($resultarray['message']) ? $resultarray['message'] : 'admin_succeed'), $resultarray['redirect']);
复制代码 在其上面加- require_once DISCUZ_ROOT.'./include/cache.func.php';
- updatecache('daystar');
复制代码 6.编辑文件index.php
6.1查找:- require_once DISCUZ_ROOT.'./include/forum.func.php';
复制代码 下面添加:- require_once DISCUZ_ROOT.'./forumdata/cache/cache_poststar.php';
- $month=date(n);
- $year=date(Y);
复制代码 6.2查找:- unset($_DCACHE['announcements']);
复制代码 下面添加:- //========== 社区明星BY 33201 开始
- $nopoststar ='<td width=17%>姓名:<font color=red><b> 虚位以待!</b></font> <br>UID :<b>空</b> <br>积分:空 <br>精华:空<br>今日发帖:空<br>总发帖量:空<br> 在线时间:空 <br> </td><td width=16% align=center class=altbg1><img src=images/nopic.gif width=80 height=80 align=center></td>';
- if($_DCACHE['daystar']) {
- foreach($_DCACHE['daystar'] as $key => $dstar) {
- if ($key<3){
- $daystars .="<td width=17%>姓名:<b>".$dstar[author]."</b> <br>UID :<b>".$dstar[authorid]."</b> <br>积分:".$dstar[credits]." <br>精华:".$dstar[digestposts]." 篇<br><font color=red><b>今日</b></font>发帖:<font color=red><b>".$dstar[num]."</b></font> 篇<br>总发帖量:".$dstar[posts]." 篇<br> 在线时间:".$dstar[oltime]." 小时<br> </td><td width=16% align=center class=altbg1><img src=".$dstar[avatar]." width=".$dstar[avatarwidth]." height=".$dstar[avatarheight]." align=center></td>";$n=$key;
- }
- }
- if($n==0){$nostar .=$nopoststar.$nopoststar;}elseif($n==1){$nostar .=$nopoststar;}
- }
- if($_DCACHE['weekstar']) {
- foreach($_DCACHE['weekstar'] as $key => $wstar) {
- if ($key<3){
- $weekstars .="<td width=17%>姓名:<b>".$wstar[author]."</b> <br>UID :<b>".$wstar[authorid]."</b> <br>积分:".$wstar[credits]." <br>精华:".$wstar[digestposts]." 篇<br><font color=red><b>本周</b></font>发帖:<font color=red><b>".$wstar[num]."</b></font> 篇<br>总发帖量:".$wstar[posts]." 篇<br> 在线时间:".$wstar[oltime]." 小时<br> </td><td width=16% align=center class=altbg1><img src=".$wstar[avatar]." width=".$wstar[avatarwidth]." height=".$wstar[avatarheight]." align=center></td>";$weeknum=$key;
- }
- }
- if($weeknum==0){$noweekstar .=$nopoststar.$nopoststar;}elseif($weeknum==1){$noweekstar .=$nopoststar;}
- }
- if($_DCACHE['monthstar']) {
- foreach($_DCACHE['monthstar'] as $key => $mstar) {
- if ($key<3){
- $monthstars .="<td width=17%>姓名:<b>".$mstar[author]."</b> <br>UID :<b>".$mstar[authorid]."</b> <br>积分:".$mstar[credits]." <br>精华:".$mstar[digestposts]." 篇<br><font color=red><b>".$month."月</b></font>发帖:<font color=red><b>".$mstar[num]."</b></font> 篇<br>总发帖量:".$mstar[posts]." 篇<br> 在线时间:".$mstar[oltime]." 小时<br> </td><td width=16% align=center class=altbg1><img src=".$mstar[avatar]." width=".$mstar[avatarwidth]." height=".$mstar[avatarheight]." align=center></td>";
- }
- }
- }
- if($_DCACHE['yearstar']) {
- foreach($_DCACHE['yearstar'] as $key => $ystar) {
- if ($key<3){
- $yearstars .="<td width=17%>姓名:<b>".$ystar[author]."</b> <br>UID :<b>".$ystar[authorid]."</b> <br>积分:".$ystar[credits]." <br>精华:".$ystar[digestposts]." 篇<br><font color=red><b>".$year."年</b></font>发帖:<font color=red><b>".$ystar[num]."</b></font> 篇<br>总发帖量:".$ystar[posts]." 篇<br> 在线时间:".$ystar[oltime]." 小时<br> </td><td width=16% align=center class=altbg1><img src=".$ystar[avatar]." width=".$ystar[avatarwidth]." height=".$ystar[avatarheight]." align=center></td>";
- }
- }
- }
- //==========社区明星BY 33201 结束
复制代码 7.编辑模板discuz.htm
查找:- <!--{if empty($gid) && ($_DCACHE['forumlinks'] || $whosonlinestatus || $bdaystatus == 1 || $bdaystatus == 3)}-->
复制代码 在它的上面或下面加:8.后台更新缓存,一定要更新,否则可能首页无法显示
完毕!
注意:首页默认发帖状元、榜眼、探花三栏是展开的,如果你想默认改为隐藏的就将show_poststar.htm
中的- <tbody id="poststar" style="display:yes">
复制代码 的 yes 修改为 none 即可!
由于时间仓促和本人水平有限,难免存在一些BUG,大家有什么意见和建议还望大家及时提出,谢谢
[ 本帖最后由 型仔123 于 2007-5-10 13:04 编辑 ] |
演示图
-
-
社区发帖之星For Disucz!5.5.0.rar (16.76 KB)
附件下载
-
-
社区发帖之星For Disucz!5[1].5.0.rar (16.76 KB)
售价: 金币 2 个 [记录]
[购买]
这是花钱下载,穷,有钱的给点钱吧,没钱下那个不要钱的
-
3
评分次数
-
|