こんにちは!Discourse によってホストされている Discourse インスタンス(エンタープライズプランではなくビジネスプラン)を運用しており、投稿にRunkitウィジェットを埋め込みたいと考えています。これは可能でしょうか?よろしくお願いいたします!
技術的には、投稿を装飾するテーマコンポーネントを使用することで可能です。その場合、埋め込み用に [wrap] セクションを定義し、投稿の装飾読み込み時にライブラリをロードして埋め込み処理を実行します。
ただし、以下の点に十分な注意を払うことを強くお勧めします:
- CSP(コンテンツセキュリティポリシー)を無効化しないよう、この点を慎重に検討する必要があります。
- 大きな動的な JS ペイロードを読み込むことで Discourse の動作が遅くならないようにする必要があります。
- Runkit に Discourse 上で JavaScript を実行させることは、同社に多大な信頼を置いていることになります。
この機能の開発には、おおよそ 1〜2 日程度の作業時間が必要と見積もられます。予算がある場合は、Marketplace でトピックを立ててご相談いただくことをお勧めします。テーマコンポーネントは、当社のビジネスプラン環境でも問題なくインストール可能です。
oEmbed 標準のおかげで、https://runkit.com/ を「許可された iframe」設定に追加するだけで完了です。
Runkit の URL を単独の行に貼り付けるだけで、Discourse が魔法のように機能します。
https://runkit.com/falco/5e13a3b7f5d2e2001a5741d2
これが
https://runkit.com/falco/5e13a3b7f5d2e2001a5741d2
に変換されます。
ただし、埋め込みコンテンツが長すぎると表示がおかしくなるため、埋め込みコンテンツを装飾し、スクロール可能にするためのテーマコンポーネントが必要になるかもしれません。