谢谢 Angus!延迟没关系。
抱歉造成困惑!是的,本地时区,是的,标准的 Discourse 行为很棒。正如你所指出的,问题不在于 Discourse,而在于 WP 没有能力让用户以本地时区查看网站。这就是我们想要添加的。如果我们让用户设置他们的时区,那么我认为我们也应该让该设置覆盖 Discourse 的设置,以便它们保持同步。这就是我想知道 DiscourseConnect 是否提供的内容。听起来它不提供。
我没有意识到 Discourse 的设置是自动的。如果是这样,我们可能就保持原样。即,在 WP 中实现本地时区,而不让该值覆盖 Discourse 的值。是的,它们可能会不同步,但这可能对大多数用户来说并不是真正的问题。
你可以将 WordPress 用户配置文件中设置的位置与 Discourse 中用户配置文件的位置字段同步。它不会默认同步,因为 WordPress 中没有与 Discourse 中的位置字段等效的标准字段。
太好了,这是缺失的信息——我不知道 DiscourseConnect 应该从 WP 端的位置数据中获取什么。我们手动实现了自己的位置字段,在 usermeta 中,所以我们可以使用 wpdc_sso_params 钩子从中提取值。
我比较迟钝,所以可能忽略了。是否有关于 wpdc_sso_params 的文档?我找到了这个帖子,目前似乎涵盖了它:
You can update User Fields that you have created on Discourse via SSO. This does not require a plugin. To do this, you need to know the name that Discourse uses in the database for the custom field. The easiest way I know of to do this is by going to your Admin / Customize / User Fields page and then loading the JSON version of the page. For example https://forum.example.com/admin/customize/user_fields.json The JSON data of the page will look something like this: { user_fields: [ { id: 12, nam…