WP Discourse 用户名和 Discourse 用户名之间的双向同步?

我已将此移至 Support > WordPress 类别,因为 Feature 类别仅用于 Discourse 功能。

WordPress 插件中的“Discourse 用户名可编辑”字段可能命名不当。该设置的文案肯定需要更新,以清楚地说明该设置的用途。启用“Discourse 用户名可编辑”设置后,WordPress 网站上的用户可以在其 WordPress 个人资料页面上设置其 Discourse 用户名。如果未启用该设置,则只有 WordPress 网站上的管理员可以设置用户的 Discourse 用户名。Discourse 用户名仅由插件用于将帖子从 WordPress 发布到 Discourse。

当 WordPress 和 Discourse 之间使用 DiscourseConnect 时,用户的 Discourse 用户名最初是从其 WordPress 用户名设置的。如果 Discourse 网站上启用了 auth_overrides_username 设置,则只能从 WordPress 设置 Discourse 上的用户名。如果 Discourse 上未启用 auth overrides username 设置,用户可以在 Discourse 上编辑其用户名,从而导致两个系统之间的用户名不同步。

在 Discourse 用户名字段方面,理想情况下,该字段应始终根据 Discourse 用户名在后台设置。我上次查看相关代码已经有一段时间了,但我相信,如果 WordPress 网站用作 Discourse 的 SSO 提供商,并且在 WordPress 上的 DiscourseConnect 提供商选项卡中启用了“登录时创建或同步 Discourse 用户”选项,则 Discourse 用户名字段会自动填充。如果 Discourse 用作 WordPress 的 SSO 提供商(使用 DiscourseConnect 客户端设置),Discourse 用户名字段也会自动设置。

理想情况下,当 WordPress 是 Discourse 的 SSO 提供商时,Discourse 用户名字段应始终自动设置,无论是否在 Discourse 上启用了“登录时创建或同步 Discourse 用户”选项。我认为在两个站点之间未使用 DiscourseConnect 的情况下无法采取任何措施,但 @angus 可能对此有想法。

默认情况下,WordPress 不允许用户更改其用户名,因此我们很少收到有关此问题的咨询。如果您想确保 WordPress 和 Discourse 之间的用户名保持同步,请确保在 Discourse 上启用 auth_overrides_username 设置。您可能还想在 WordPress 上启用“登录时创建或同步 Discourse 用户”选项。启用该选项后,用户每次登录您的 WordPress 网站时都会在 Discourse 上更新。如果未启用该选项,用户仅在注销 Discourse,然后使用 DiscourseConnect 重新登录时才会在 Discourse 上更新。

3 个赞