ジェフ、ありがとう。以前は iframe をホワイトリストに登録できたのですが、それは私が探している動作ではありません。
ラファエル、こんにちは。
私の説明が下手だったのかもしれません。この投稿に例があります:
そのリンクの私の投稿の下部に「Loading」と表示されています。これは特定の属性を持つ div で、管理テーマの /body セクション(スクリプトを配置する場所)に設置した外部スクリプトをトリガーし、JavaScript を介してコンテンツ(統計バーで埋められた状態)を生成するものです。
最終的には、このトピックの上部にリンクした CodePen のように、データが生成された時点で表示されるはずです。
カスタム data 属性は Discourse でデフォルトでホワイトリストに登録されており、id や class が削除されるように div から削除されることはありません。
私の問題は、これらの外部スクリプトを実行し、属性に基づいてこれらの空の div の内部でデータを生成する方法です。これらの属性に基づいて、トピックや投稿ごとに異なるデータを生成し、外部スクリプトによって生成された異なるデータを表示するスクリプトをトリガーできます。
私が行おうとしていることの要約
管理 > カスタマイズ > テーマ「CSS/HTML の編集」 セクションに配置された外部スクリプト:
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://bloodmallet.com/js/bloodmallet_chart_import.min.js"></script>
ユーザーまたは私によるエディタへの入力:
<div
data-bloodmallet="chart"
data-wow-class="shaman"
data-wow-spec="elemental"
data-chart-engine="highcharts"
data-tooltip-engine="wowhead"
data-type="trinkets"
data-azerite-tier="all"
data-fight-style="patchwerk"
data-entries="7"
data-background-color="#343a40"
data-font-color="#f8f9fa"
data-axis-color="#828282"
data-language="en"
>Loading...</div>
div が検出され、外部 JavaScript(管理側で配置したスクリプト)が実行され、それらの data 属性に基づいてコンテンツを生成するようにトリガーされたときの出力:
私の意図は伝わっていますか?バイリンガルであるため、説明が下手で、物事をより複雑に聞こえるようにしてしまうことがありますが、ご容赦ください。
