5.3.x script-Tag im TinyMCE nicht korrekt
Hallo in die Runde,
ich verwende ein Cookie-Banner eines großen Anbieters. Das erfordet für die korrekte Funktion das Ersetzen der script Tags der Form
HTML-Code:
<script type="text/javascript"></script>
oder auch der Form
HTML-Code:
<script></script>
durch
HTML-Code:
<script type="text/plain" data-usercentrics="ServiceName"></script>
Soweit machen das ja fast alle Provider gleich.
Das spezifische Javascript befindet sich in einem angepassten Template des bekannten Katalogmanagers.
Im Template steht zwar type="text/plain", ausgespielt wird aber tyte="text/javascript" und alle zusätzlichen Attribute werden entfernt.
Das soll nicht sein. Wie kann man das beheben?
Was habe ich bisher versucht?
- TinyMCE Template angepasst und extended_valid_elements: 'script[type,data-usercentrics]', ergänzt
- Contao Einstellungen geändert, script-Tag Attribute data-usercentrics hinzugefügt
Das Attribute type wird jedoch weiterhin immer auf text/javascript zurückgesetzt und das Attribute data-usercentrics wird weiterhin entfernt. Im TinyMCE erscheinen beide attribute korrekt. Sie werden erst beim Ausspielen geändert.
Wo muss ich da noch ansetzen, um das gewünschte script Tag zu bekommen?
Beste Grüße vom
Theo
Liste der Anhänge anzeigen (Anzahl: 1)
Also ich verwende den Catalog-Manager und dessen Templates.
Den Catalog-Manager von Herrn Alexander Naumov muss man aber nicht kennen. Das Bundle arbeitet wie viele andere Contao-Bundles mit Templates. Egal ob per html oder Twig.
Sehr ähnlich ist die Arbeitsweise der Core-Bundles news oder events. Deswegen beziehe ich mir hier mal auf diese...
Diese verfügen über je ein modul_template, ein list_template für den Leser und ein detail_template (event_full oder news_full etc) für den Reader.
So auch beim Catalo-Manager.
Mein Listing listet nun alle Objekte auf, die im Catalog gespriechert sind. Das ist analog zum news_list oder event_list.
Klicke ich nun beispielsweise wie beim den Events oder News auf eine Nachricht oder ein Event in dieser Auflistung so gelange ich auf eine Detailseite, wo die News oder Events über meinen Reader mit den Templates news_full oder event_full bereitsgetellt werden.
Ich habe nun in den Templates eines dieser detail_templates (analog der Einzeldarstellung eines Events oder einer Nachricht) angepasst.
Dieses Template bearbeite ich unter Templates->Edit
Das sieht so aus:
Anhang 27463
Wenn man dieses Template so speichert, ist und bleibt das script-Tag unverändert im Template erhalten.
Jedoch wird am Frontend das Tag modifiziert ausgeliefert und zwar mit
HTML-Code:
<script type="text/javascript">
</script>
Das Attribute type wird umgeschrieben von "text/plain" nach "text/javascript" und das (jedes) Attribute data-*** wird entfernt.
Das geschieht auch dann, wenn man script als zulässiges Tag am BE einträgt und data-usercentrix als zulässiges Attribute.
Es wird dennoch umgeschrieben und entfernt.
Dieses Problem muss ich beheben.
In der Regel sollte das nicht so auftreten, denn fast jeder Privacy-Manager oder Cookie-Bar arbeitet auf diese Weise mit zusätzlichen data-Attributen. Das von mir entwickelte Bundle pdir/klaro-consent-manager macht das genauso.