外部IDを使用してDiscourseを埋め込む

こんにちは、皆さん。

Discourse にコミュニティを移行中です。現在のコミュニティには多くの既存コンテンツがあります。トピックやコメントをサイトのページに表示するには、JavaScript の埋め込みオプションが有効な方法のようです。

移行されたコミュニティコンテンツを正しいページにリンクできるようにするために、external_id プロパティの使用を検討しています。

API を介して各トピックの property_id をプログラムで設定できますが、埋め込みコードでどのように使用すればよいかわかりません。

以下を試しましたが、うまくいきませんでした。

<script type="text/javascript">
  DiscourseEmbed = {
    discourseUrl: 'https://discourse.mydomain.com/',
    external_id: "296645"
  };

  (function() {
    var d = document.createElement('script'); d.type = 'text/javascript'; d.async = true;
    d.src = DiscourseEmbed.discourseUrl + 'javascripts/embed.js';
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(d);
  })();
</script>

他に試せることはありますか?

これを解決できましたか?私も external_id を使って同じことを達成する必要があるのですが、変数名が正しくないと思います。

特定のトピックを埋め込む場合、変数は「topicId」です。「externalId」を試しましたが、うまくいきませんでした。

やろうとしていることは、こちらに記載されていると思います。
https://meta.discourse.org/t/embed-discourse-comments-on-another-website-via-javascript/31963#alternate-configuration-linking-to-existing-topics-6

これは、外部サイトの既存の投稿を既存のDiscourseトピックにリンクしたい場合に役立ちます。このコードは、Discourseにリンクしたい各外部投稿に追加する必要があります。各投稿で、リンクしたいDiscourseトピックのIDにtopicIdパラメータを設定する必要があります。

これで問題が解決しない場合は、何をやろうとしているのか、もう少し詳しく説明していただけますか?

より分かりやすくなるように、別のスレッドに分割しました。