Richie
(Richie Rich)
1
是否有办法隐藏拥有特定徽章的用户列表?
我查看了 Don't list members having the same badges 和 https://meta.discourse.org/t/hide-badge-user-list/46471,但它们并不完全符合我们的用例(或者更可能是我们的边缘情况)。
徽章在我们的社区中非常受欢迎,它们是提高参与度的绝佳资源。
我们的 Discourse 有一些高级类别,仅对订阅者/付费会员可用,我们希望通过个人资料中的金徽章来奖励这些付费会员,在此示例中我们称之为“额外特别会员”。
付费会员的数量是商业敏感数字。
该数字将泄露给任何拥有“额外特别会员”徽章的人,即使它在徽章页面上隐藏了,他们也可以简单地点击自己的徽章,然后看到所有也拥有该徽章的其他会员。
有没有办法阻止人们看到谁还拥有某个特定徽章?
Richie
(Richie Rich)
4
我不反对泄露隐藏的用户组名称,只要成员列表/计数不被泄露。
Richie
(Richie Rich)
5
我已经进行了一些测试,但不确定这是否适合我们的用例。
(来自我们隐藏群组的)徽章会应用到用户身上,但他们一旦加入我们任何其他群组,他们的徽章就会被他们刚加入的群组的徽章替换。
在他们的个人资料上,他们之后只能选择一个公开群组的徽章,他们完全失去了对特殊成员徽章的访问权限,也无法重新应用它 
Stephen
(Stephen)
6
您是否在其他组中设置了此项:

它位于每个组的“管理/成员资格”下的“效果”中。
如果此项已在该组上设置而不在其他组上设置,则不应覆盖。
主组将决定用户的默认装饰和标题。
1 个赞
Richie
(Richie Rich)
7
是的,它已在我们所有的群组上设置,因此他们会获得他们刚刚加入的群组的徽章。
Richie
(Richie Rich)
8
其他的想法是强制所有用户使用一个头衔,例如“访客”,但这可以被他们更改为他们拥有的任何徽章头衔。我认为我无法阻止人们更改他们的头衔。
我想让访客和会员能够识别彼此(例如,通过徽章),但又不泄露我们拥有的“超级特别会员”的数量。
还有其他创新的解决方案或变通方法吗?
我能用“用户字段”做些巧妙的事情吗?
也许创建一个名为“状态”的用户字段,使其在个人资料中可见,但不能由用户编辑。然后我可以通过 API 调用自动更新这个“状态”用户字段吗?(我们触发一个 API 调用将他们添加到组中)
Richie
(Richie Rich)
10
我可能发现了什么:
我创建了一个名为“会员”的用户字段,并且不允许他们编辑:
如果我编辑一个用户进行测试,我可以在他们的个人资料中看到“会员:是”:
但这可能是决定性的:
我该如何着手呢?
我已经有一个在某人成为会员时已经进行的 API 调用,我向 Discourse 发送一个 API 调用将他们添加到组中。我能否也发送第二个 API 调用来更新该用户字段?
Canapin
(Coin-coin le Canapin)
11
当然 
每次你在 Discourse 中执行任何操作时,都可以查看浏览器开发者工具的网络选项卡,以了解所进行的查询。
例如,在这里我保存了一个用户的个人资料:
你会看到请求 URL,其中提到了用户名,以及请求的类型(PUT)。
在 Payload 选项卡中,你会看到相关数据:
自定义字段列为 user_fields[X],其中 X 是自定义字段的编号。
编辑:我看到你在 Dev 中已经解决了这个问题,所以,只是为了交叉链接…… 
1 个赞