请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Discuz! 官方站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Discuz! X 最新研发动态 通过这个窗口,关注跟踪我们的研发进展 Discuz! 开发技术文库 - 给官方提建议

Discuz! X2 正式版下载 帮助网站实现一站式服务  商业支持服务咨询 下载 - 安装 - 常见问题 - 转换 - 讨论 - 购买

2012站长年会开启报名 限量船票免费发放 Discuz!十大荣誉用户评选 - Discuz!NT3.6发布 漫游引入QQ空间游戏 -火影首服火爆开启-5d6d免费论坛

查看: 55930|回复: 302

[插件] 版主已阅插件 for dz7.0&7.1&7.2 [09.12.31]   [复制链接]

King

amehime

Rank: 6Rank: 6

UID
885220
积分
1142
帖子
695
威望
1
在线时间
41 小时
注册时间
2008-1-25
发表于 2008-11-14 01:44:08 |显示全部楼层
插件发布
插件名称: 版主已阅插件
插件来源: -
适用版本: Discuz! 7.2
语言编码: GBK简体 
最后更新时间: -
插件作者: 糖姬
插件简介: 版主已阅插件。。正式版测试也成功啦~~XD
本帖最后由 可爱糖酱 于 2010-3-3 20:46 编辑

-----------------------最新答疑-------------------------

1.如果以前装过版主已阅就不用再升级数据库了~不然会出错哦。。(其实不是真的出错了。。就是提示你已经有了不要再升级了)
2.关于已阅什么的。。
比如一个楼有10张贴
点9楼的回复时,会显示[XXX 阅至 9楼]
点10楼会显示[XXX 已阅]
这是正常的,比如你一开始点了10楼的已阅,然后后来又有一个人回复了产生了11楼
回去刷新会发现已经自动变成了[XXX 阅至 10楼]的字样
意思就是告诉你你之前只看到第10楼,看完了的话就显示已阅了这样。。(不晓得大家明白否~)
这样是有利于查贴的哦
3.还有如果在文件里找不到要修改的东西,请抓其中的几个词进行模糊搜索,一般都能搜到的~
4.修正部分内容,如第三页的帖子点了已阅后仍返回第三页
5.升级至7.1版本,新内核无能请手动修改,原7.0装了的不用再升级数据库,改文件即可
6.发现7.1贴内回复2.0似乎与本插件有冲突,请关闭贴内回复后台的 全局设置 显示帖内回复数量 选择否 即可暂时解决问题

-----------------------最新答疑-------------------------


修改时注意红字
这东西难度系数为0,只要你好好找准了代码
注意模糊查询

除特别标注,其他修改的地方两版本一致

第一步:升级数据库:
  1. ALTER TABLE `cdb_threads` ADD `markread` VARCHAR( 255 ) NOT NULL;
  2. ALTER TABLE `cdb_threads` ADD `markuser` VARCHAR( 255 ) NOT NULL;
复制代码
有人不知道这怎么弄捏
后台 - 工具 - 数据库 - 升级     
黏贴上面的SQL代码内容到框框框里提交~~OK

第二步:修改topicadmin.php

7.0&7.1版本查找
  1. } elseif($action == 'delpost') {
复制代码
7.2版本查找
  1. } elseif($action == 'delpost' && $allowdelpost) {
复制代码
在其上面加上:
  1. //---os版主已阅 开始 -------------------

  2. } elseif($action == 'modmarkread' && $post) {
  3.                 $db->query("UPDATE  {$tablepre}threads SET markread='$post\t$discuz_user\t$timestamp' WHERE tid='$tid'");
  4.                 showmessage('admin_succeed', "forumdisplay.php?fid=$fid&page=$fpage");
  5. //---os版主已阅 结束---------------------
复制代码
*注:这样点“已阅”后,会自动返回到列表的第一页中;
New!如需点“已阅”后返回主题所在列表页确切的页数,则将上面的代码改成:
  1. //---os版主已阅 开始 -------------------

  2. } elseif($action == 'modmarkread' && $post) {
  3.                 $upnavlink = 'forumdisplay.php?fid='.$fid.($extra ? '&'.preg_replace("/^(&)*/", '', $extra) : '');
  4.                 $db->query("UPDATE  {$tablepre}threads SET markread='$post\t$discuz_user\t$timestamp' WHERE tid='$tid'");
  5.                 showmessage('admin_succeed', "$upnavlink");
  6. //---os版主已阅 结束---------------------
复制代码
如需点“已阅”后返回所在内容页中,则将上面的代码改成:
  1. //---os版主已阅 开始 ---------------------
  2. } elseif($action == 'modmarkread' && $post) {
  3.                 $db->query("UPDATE  {$tablepre}threads SET markread='$post\t$discuz_user\t$timestamp' WHERE tid='$tid'");
  4.                 showmessage('admin_succeed', "viewthread.php?tid=$thread[tid]&extra=$extra
  5. ");
  6. //---os版主已阅 结束----------------------
复制代码
*以上三种形式选一即可

第三步:修改forumdisplay.php

7.0版本查找:
  1. $thread['moved'] = 0;
复制代码
7.1&7.2版本的查找:
  1. $thread['moved'] = $thread['heatlevel'] = 0;
复制代码
其上面加上:
  1. //---os版主已阅 开始------------------
  2.         if($thread['markread']){
  3.                 $thread['markread'] = explode("\t", $thread['markread']);
  4.                 $thread['markread'][2] = gmdate("$dateformat $timeformat", $thread['markread'][2] + $timeoffset * 3600);
  5.                 $thread['markreadpage'] = ceil($thread['markread'][0] / $ppp);
  6.                 $thread['markreadpage'] = $thread['markreadpage'] != 1 ? $thread['markreadpage'].' 页 ' : '' ;
  7.         }
  8. //---os版主已阅 结束 ------------------
复制代码
第四步:修改viewthread.php


查找:
  1. $thisgid = 0;
复制代码
在其后面加上:
  1. //---os版主已阅 开始--------------------
  2. $thread['markread'] = explode("\t", $thread['markread']);
  3. $thread['markuser'] = explode("\t", $thread['markuser']);
  4. //---os版主已阅 结束--------------------
复制代码
第五步:修改你所使用风格模板中的forumdisplay.htm,如果没有,就修改默认模板里面的

查找:
  1. <span id="thread_$thread[tid]"><a href="viewthread.php?tid=$thread[tid]&amp;extra=$extra"$thread[highlight]>$thread[subject]</a></span>
复制代码
在</span>后面加上:
  1. <!--{if $thread['markread']}-->
  2.   <span alt='{lang moderator}: $thread['markread'][1]{LF}{lang time}: $thread['markread'][2]'>
  3.   [$thread['markread'][1]
  4.   <!--{if ($thread['markread'][0] - 1) <> $thread['replies']}-->
  5.   阅至: $thread['markreadpage'] $thread['markread'][0] 楼]
  6.   <!--{else}-->
  7.   已阅]
  8.   <!--{/if}-->
  9.   </span>
  10.   <!--{/if}-->
复制代码
如果想换成版主查水至XX楼这样的,可以改成:
  1. <!--{if $thread['markread']}-->
  2.   <span alt='{lang moderator}: $thread['markread'][1]{LF}{lang time}: $thread['markread'][2]'>
  3.   [$thread['markread'][1]
  4.   <!--{if ($thread['markread'][0] - 1) <> $thread['replies']}-->
  5.   查水至: $thread['markreadpage'] $thread['markread'][0] 楼]
  6.   <!--{else}-->
  7.   已阅]
  8.   <!--{/if}-->
  9.   </span>
  10.   <!--{/if}-->
复制代码
第六步:修改你所使用风格模板中的viewthread_node.htm,如果没有,就修改默认模板里面的

7.0版本查找:
  1. <a href="javascript:;" onclick="scrollTo(0,0);">TOP</a>
复制代码
7.1&7.2版本的查找:
  1. <!--{if $discuz_uid && $magicstatus}-->
复制代码
在上面加入:
  1.                                         <!--{if in_array($adminid, array(1,2,3))}--><!--{if $forum['ismoderator'] || ($thread[markread][0] < $post[number])}-->
  2.                                         <a href="topicadmin.php?action=modmarkread&tid=$tid&post=$post[number]&extra=$extra">已阅</a>
  3.                                         <!--{/if}-->
  4.                                         <!--{/if}-->
复制代码
好了安装结束,去测试一下吧~

本人测试成功

欢迎大家测试提交BUG。。

演示这里:http://www.osacg.cn
已有 5 人评分威望 金币 收起 理由
無名書生 + 2 无法查最后一楼的帖子。请问是BUG吗?我在
⿴追忆困ㄋ + 1 不错
itbaby + 6 DST支持作者

总评分: 威望 + 1  金币 + 14   查看全部评分

——博客哟,正式投入使用,求链接

Rank: 6Rank: 6

UID
1021569
积分
1167
帖子
1123
威望
0
在线时间
8 小时
注册时间
2008-11-12
发表于 2008-11-14 01:47:55 |显示全部楼层
SF

使用道具 举报

Rank: 6Rank: 6

UID
1021569
积分
1167
帖子
1123
威望
0
在线时间
8 小时
注册时间
2008-11-12
发表于 2008-11-14 01:48:39 |显示全部楼层
沙发  

使用道具 举报

Rank: 6Rank: 6

UID
997733
积分
2296
帖子
1952
威望
11
在线时间
402 小时
注册时间
2008-9-25
发表于 2008-11-14 01:53:52 |显示全部楼层
支持!

使用道具 举报

Genius

www.mjj.hk

Rank: 12Rank: 12Rank: 12

UID
952090
积分
13906
帖子
16580
威望
60
在线时间
0 小时
注册时间
2008-6-22
发表于 2008-11-14 02:07:07 |显示全部楼层
支持!

使用道具 举报

Rank: 6Rank: 6

UID
916458
积分
1110
帖子
1013
威望
10
在线时间
83 小时
注册时间
2008-4-6
发表于 2008-11-14 03:46:34 |显示全部楼层
支持,速度真快啊!

使用道具 举报

Genius

飞吧资源站站长

Rank: 12Rank: 12Rank: 12

UID
13514
积分
16342
帖子
12609
威望
100
在线时间
555 小时
注册时间
2003-4-23
发表于 2008-11-14 05:54:52 |显示全部楼层
www.dishack.cn收录,感谢发布!

使用道具 举报

Forum Legend

希望大家加盟 UG吧

Rank: 8Rank: 8

UID
933820
积分
8293
帖子
9880
威望
0
在线时间
2 小时
注册时间
2008-5-14
发表于 2008-11-14 05:56:34 |显示全部楼层
好东西

使用道具 举报

King

amehime

Rank: 6Rank: 6

UID
885220
积分
1142
帖子
695
威望
1
在线时间
41 小时
注册时间
2008-1-25
发表于 2008-11-14 12:03:57 |显示全部楼层
咩~~谢谢大家支持~~

于是我不厚道的来个人工置顶。。。。
——博客哟,正式投入使用,求链接

使用道具 举报

King

amehime

Rank: 6Rank: 6

UID
885220
积分
1142
帖子
695
威望
1
在线时间
41 小时
注册时间
2008-1-25
发表于 2008-11-14 12:47:10 |显示全部楼层
其实这个很简单的。。。要改的地方都差不多了。。。
——博客哟,正式投入使用,求链接

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

fastpost

手机版|Archiver|北京康盛新创科技有限责任公司 ( 京ICP证110024号|京网文[2011]0019-007号 )  

GMT+8, 2012-2-4 10:14 , Processed in 0.128957 second(s), 16 queries , Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部