Discuz!如何显示用户名字谢谢了,大神帮忙啊

Discuz!如何显示用户名字谢谢了,大神帮忙啊,第1张

Discuz 在发帖或者回帖的时候,默认是显示用户的“用户名”的,这里的用户名就是用户注册的时候使用的用户名,是唯一的。但是很多用户进了论坛之后都会弄一个比较个性的昵称,看到发帖或者回帖的时候自己费尽心构思的昵称居然不会显示在醒目的地方,就很没有归属感,觉得自己“好像不存在”了一样,很不爽。所以我想要实现在用户发帖或者回帖的时候,如果用户自定义了昵称就显示昵称,否则就显示注册的用户名。 Discuz 本身没有这个设定功能(我用的是Discuz 6)。为了解决这个问题,我google了一下,结果发现很多Discuz的用户都想解决这个问题,也有人到官方反应的,不过结果很无奈,这么个小功能貌似一直没有添加。不过好在有人提供了一些思路,我转贴一下,好让更多需要的人google到。 注:修改 Discuz 之前请确保你了解一些PHP编程知识并知道自己在干什么。 原帖地址 首先,打开 include/globalfuncphp ,在里面添加下面的一个函数: 1 2 3 4 5 6 7 8 9 function getnickname($uid) { global $db, $tablepre; $nickname = ''; $query = $db->query("SELECT nickname from {$tablepre}memberfields where uid= '{$uid}' LIMIT 1"); if($memnick = $db->fetch_array($query)) $nickname = $memnick['nickname']; return $nickname; } 然后打开 include/newreplyincphp ,找到 1 $author = empty($isanonymous) $discuz_user : ''; 替换成: 1 2 3 4 5 6 7 8 if($nickname = getnickname($discuz_uid)) { $author = empty($isanonymous) $nickname : ''; } else { $author = empty($isanonymous) $discuz_user : ''; } 然后查找文件中的文本: 1 '$discuz_user' // 注意两边的单引号,这样是为了找到sql语句中引用到的 $discuz_user变量 替换成: 1 '$author' 接下来打开 include/newthreadincphp ,找到: 1 $author = !$isanonymous $discuz_user : ''; 替换成: 1 2 3 4 5 6 7 8 if($nickname = getnickname($discuz_uid)) { $author = !$isanonymous $nickname : ''; } else { $author = !$isanonymous $discuz_user : ''; } 然后查找文件中的文本: 1 '$discuz_user' // 注意两边的单引号,这样是为了找到sql语句中引用到的 $discuz_user变量 替换成: 1 '$author' 这样咱们的工作就告一段落了,不过这只能保证改动代码之后用户发的帖子和恢复都会优先显示自定义的昵称,没有昵称才会显示用户名。之前的信息怎么办呢?我看了一下,最需要处理的应该就是帖子列表中的“作者”一栏,其它的比如“最近回复”都会逐渐被后面的新发布的信息顶下去,所以不用关心。这样的话一条 SQL 语句就可以了,假设你的 discuz 安装的时候使用的数据库表的前缀是 “cdb_”, SQL 语句就可以这样写: 1 UPDATE cdb_threads AS A, cdb_memberfields AS B SET Aauthor=Bnickname WHERE Aauthorid=Buid AND Bnickname!=''; 搞定。希望对那些需要的人有帮助。如果 Discuz 的开发人员看到篇日志,希望可以在以后添加这个小功能。 BTW,越来越发现 Hack 是一种态度,“甭管什么东西,只要让我看一段时间的源码,我就能修改成想要的样子”——这样子写程序才有意思。

没办法获取。Discuz是QQ上常见的论坛平台,在国内普及率很高,在维护过程中,将一些应用启用后,对网站接近跟浏览者之间的距离很有用,unionid官方的解释是通过获取团队基本信息接口,开发团队可通过OpenID来获取其他用户基本信息,而个人在QQ上登录discuz论坛账号是没办法获取unionid信息的,因为获取unionid信息需要正规开发团队申请才可以,个人是没有权利的。

以上就是关于Discuz!如何显示用户名字谢谢了,大神帮忙啊全部的内容,包括:Discuz!如何显示用户名字谢谢了,大神帮忙啊、discuzqq登录获取unionid、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9734299.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存