如何显示所有注册会员的用户电子邮件

亲爱的 Discourse 社区:

我希望能公开所有用户的电子邮件地址。
更准确地说,我希望每位注册会员(而不仅仅是管理员)都能从用户的成员卡片中访问其电子邮件地址。
换句话说,每位成员都可以通过以下链接查看其他成员的电子邮件地址:
https://meta.discourse.org/{user}/summary

我尝试修改了 user.hbs 文件,但似乎只有管理员才能访问电子邮件地址数据。
是否有办法让这些数据不仅限于管理员访问?

非常感谢您的帮助!

Richard

嘿,Richard,

最简单的方法是为该功能设置一个自定义字段。

在源代码中搜索 check_emailscan_check_emails? 方法,然后对其进行重写。

但将电子邮件地址公开真的是个好主意吗?

当你更新源代码后,这些修改就会丢失。这不是个好主意。

是的。:sweat_smile: 我下意识地认为开发者会通过插件来实现它。

只是不要让它们完全公开,否则会被所有爬虫以及其他不知名的人获取!

感谢大家的帮助!
确实,创建自定义字段是最佳解决方案,谢谢 Gavin。:wink:

以下是我需要为每位成员显示电子邮件地址的原因:
我正在工作的 Discourse 论坛是为我的学校网络设计的。
目标是创建一个毕业生和非毕业生共同参与的社区。
因此,显示电子邮件地址是分享有用信息的好方法。


Hawn - 只是出于好奇。我该如何修改存储了 can_check_emails 方法的 user_guardian.rb 文件?

我知道可以通过 plugin-outlet 修改 .hbs 等模板文件。
但似乎以下脚本仅适用于模板,而不适用于 .rb 文件:

<script type="text/x-handlebars" data-template-name="/connectors/PLUGIN-OUTLET-NAME/UNIQUE-NAME">

</script>

非常感谢,

Richard

亲爱的罗伯特,

我不想让它们公开,只对会员可见。:wink:

继续阅读更多与插件开发相关的主题,您可以轻松实现它。