Danke, Jeff. Ich habe in der Vergangenheit Iframes bereits whitelisten können, aber das ist nicht das Verhalten, das ich suche.
Hallo Rafael,
ich befürchte, ich kann mich schlecht ausdrücken. Es gibt ein Beispiel in diesem Beitrag:
Am Ende dieses Links steht in meinem Beitrag „Loading“. Das ist ein div mit bestimmten Attributen, das die externen Skripte auslösen soll, die ich im Admin-Bereich im Theme unter dem Abschnitt /body (wo Skripte hingehören) platziert habe. Diese Skripte werden dann über JavaScript mit Inhalt gefüllt (mit statistischen Balken).
Am Ende sollte es so aussehen wie im Codepen, das ich zuvor oben in diesem Thema verlinkt habe, sobald die Daten generiert sind.
Die benutzerdefinierten Datenattribute sind bei Discourse standardmäßig bereits whitelistet und werden nicht aus dem div entfernt, wie es bei id oder class der Fall ist.
Mein Problem ist: Wie kann ich bewirken, dass diese externen Skripte ausgeführt werden und Daten in diesen leeren divs basierend auf den Attributen generieren? Basierend auf diesen Attributen könnten sie je nach Thema oder Beitrag unterschiedlich sein und das Skript auslösen, verschiedene Daten anzuzeigen, die von diesen externen Skripten generiert werden.
Zusammenfassung meines Vorhabens
Externe Skripte, die im Admin-Bereich unter Customize > Theme „Edit CSS/HTML“ im Abschnitt platziert werden:
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://bloodmallet.com/js/bloodmallet_chart_import.min.js"></script>
Eingabe im Editor durch einen Benutzer oder mich:
<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>
Ausgabe, wenn das div gefunden wird und das externe JavaScript (die Skripte, die ich auf der Admin-Seite platziert habe) ausgeführt und ausgelöst wird, um Inhalt basierend auf diesen Datenattributen zu generieren:
Mache ich mich verständlich? Ich entschuldige mich, wenn ich mich nicht gut ausdrücken kann, da ich zweisprachig bin und es manchmal dazu neige, Dinge komplizierter klingen zu lassen.