是否可以通过 iframe 将 Discourse 嵌入到 Salesforce Community(Experience Cloud 站点)?如果可以,如何实现?

我使用的是商业试用版,并参考了这篇 文章。LWC 被用作 Discourse 的包装器。由于 LWC 不允许在 HTML 标记中添加 和 标签,我从 myDiscourseAcc.discourse.group/javascripts/embed.js 下载了 JavaScript 库,将其保存为 Salesforce 组织中的静态资源,并加载到 LWC 中。

iframe 能够显示,但始终显示登录页面和“登录以回复”按钮。但我需要显示论坛及其所有功能——目前无法实现。

  1. 在 LWC 中,我为 window.DiscourseEmbed 指定了 discourseUrl、discourseEmbedUrl 和 fullApp(设置为 true)。
  2. 已在“管理”→“嵌入”→“主机”中添加了 Salesforce 社区站点。已启用完整应用模式。
  3. Discourse Connect 运行正常,相关配置也已设置完成。
  4. 在 Salesforce 组织中,已将 Discourse 添加到受信任的 URL。
  5. 登录社区时,社区日志和 Discourse 日志中均未出现任何错误。
  6. 加载社区时,我可以设置重定向到 Discourse 再返回,以通过 URL 获取 SSO 和 SIG。
  7. 当我点击自定义按钮或嵌入的 Discourse iframe 中的“登录以回复”按钮时,可以在新窗口或新标签页中打开 Discourse。

但尽管如此,登录页面仍然在嵌入的 iframe 中显示。

1 个赞