面向公众的社区启用了自动登录?

您说得对,点击“回复”会触发登录流程。如果使用了 DiscourseConnect(或任何其他单一登录提供商),则会跳过 Discourse 登录模态框 :+1:

但是,我认为 OP(发帖人)希望用户能够自动登录,而无需点击“回复”或“登录”。通过这种设置,用户可以在主站点和社区之间无缝切换。我们已经为几位客户实现了这一点,但这些都是定制化实现,不易推广。

举个例子:如果您的论坛在 forum.example.com 上,而您的主站点在 example.com 上,那么论坛可以读取 example.com 的 cookie。因此,一个主题组件可以检查 cookie 的存在并执行类似以下操作:

const cookie = require("discourse/lib/cookie").default;
if(cookie('name_of_example_com_auth_cookie') && !api.getCurrentUser()){
  // 用户拥有 example.com 的身份验证 cookie。他们几乎肯定
  // 在那里登录了,所以我们来运行身份验证流程
  window.location = "https://forum.example.com/auth/oidc"
}

(这里有各种条件适用。例如,cookie 不能是 http_only,也不能是仅主机 cookie 等。)

5 个赞