Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Discuz! X2实现加密帖本人可见的方法

[复制链接]
otherbank 发表于 2011-10-8 10:35:52 | 显示全部楼层 |阅读模式
本帖最后由 otherbank 于 2011-10-8 10:38 编辑


  1. [hide=1000]加密的帖子内容[/hide]
复制代码

Discuz! X2,发帖时使用了这样的添加隐藏内容后,连发帖者本人都看不到内容了,除非你的积分高于你的设定,除非你是管理员才能看到。
如何实现加密帖本人可以看见帖子内容呢?

有的DZ网友曾经试着这样改过source\function\function_discuzcode.php文件的36行:
if($_G['member']['credits'] >= $creditsrequire || $_G['forum']['ismoderator'] || ($_G['thread']['authorid'] == $_G['uid']))
这样改过之后,在自己发的主题帖里加密,或者在自己主题帖里回复加密,都是可以看见的;
但在别人发的主题帖里,用加密帖回复后,你自己就看不到了。

怎么完美解决这个问题呢,加密贴在阅读权限高的可看、管理员可看基础上,实现发帖本人既能看自己的加密贴主题,还能看自己的加密贴回复呢?

这个问题的解决方法两步:
一、修改文件"\source\module\forum\forum_viewthread.php"找到大约893行:

  1. if($post['username']) {
  2. $_G['forum_onlineauthors'][] = $post['authorid'];
  3. $post['usernameenc'] = rawurlencode($post['username']);
  4. $post['readaccess'] = $_G['cache']['usergroups'][$post['groupid']]['readaccess'];
  5. if($_G['cache']['usergroups'][$post['groupid']]['userstatusby'] == 1) {
  6. $post['authortitle'] = $_G['cache']['usergroups'][$post['groupid']]['grouptitle'];
  7. $post['stars'] = $_G['cache']['usergroups'][$post['groupid']]['stars'];
  8. }
复制代码
修改为:
  1. if($post['username']) {
  2. $_G['authorid'] = $post['authorid'];
  3. $_G['forum_onlineauthors'][] = $post['authorid'];
  4. $post['usernameenc'] = rawurlencode($post['username']);
  5. $post['readaccess'] = $_G['cache']['usergroups'][$post['groupid']]['readaccess'];
  6. if($_G['cache']['usergroups'][$post['groupid']]['userstatusby'] == 1) {
  7. $post['authortitle'] = $_G['cache']['usergroups'][$post['groupid']]['grouptitle'];
  8. $post['stars'] = $_G['cache']['usergroups'][$post['groupid']]['stars'];
  9. }
复制代码

二、修改文件"\source\function\function_discuzcode.php"的函数creditshide大约在36行
  1. function creditshide($creditsrequire, $message, $pid) {
  2. global $_G;
  3. if($_G['member']['credits'] >= $creditsrequire || $_G['forum']['ismoderator'] )
  4. {
  5. return tpl_hide_credits($creditsrequire, str_replace('\"', '"', $message));
  6. } else {
  7. return tpl_hide_credits_hidden($creditsrequire);
  8. }
  9. }
复制代码
修改为:
  1. function creditshide($creditsrequire, $message, $pid) {
  2. global $_G;
  3. if($_G['member']['credits'] >= $creditsrequire || $_G['forum']['ismoderator'] || ($_G['authorid'] == $_G['uid']))
  4. {
  5. return tpl_hide_credits($creditsrequire, str_replace('\"', '"', $message));
  6. } else {
  7. return tpl_hide_credits_hidden($creditsrequire);
  8. }
  9. }
复制代码

OK!


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

extollive 发表于 2011-10-8 13:07:32 | 显示全部楼层
成为我的书签了
回复

使用道具 举报

feiyaogzs 发表于 2011-10-8 13:51:28 | 显示全部楼层
奇怪成为我的书
回复

使用道具 举报

pcyi 发表于 2011-10-8 20:35:19 | 显示全部楼层
这个修改很人性化。
回复

使用道具 举报

 楼主| otherbank 发表于 2011-10-8 20:58:36 | 显示全部楼层
pcyi 发表于 2011-10-8 20:35
这个修改很人性化。

的确是
回复

使用道具 举报

 楼主| otherbank 发表于 2011-10-8 20:59:20 | 显示全部楼层
feiyaogzs 发表于 2011-10-8 13:51
奇怪成为我的书

说明这个贴有很多人需求
回复

使用道具 举报

天地神兵 发表于 2011-10-8 21:12:14 | 显示全部楼层
好文章,建议出教程
回复

使用道具 举报

szdbbs 发表于 2011-10-10 23:50:47 | 显示全部楼层
顶坤哥
回复

使用道具 举报

ARCHY` 发表于 2011-10-14 11:59:10 | 显示全部楼层
学习下了哦
回复

使用道具 举报

蛋拌饭丶丨 发表于 2011-10-24 15:09:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 16:42 , Processed in 0.033589 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表