Hallo miteinander,
wir sind vor kurzem auf den TinyMCE umgestiegen und auf einen recht skurrilen Fehler mit Entities gestossen.
TinyMCE scheint auf eine obskure Weise Frontendausgaben zu beeinflussen auf die der RTE eigentlich gar keinen Einfluss nehmen können dürfte. Wir haben auf unserer Seite eine Newsleiste eingebunden, die komplett über Typoscript gesteuert wird.
Um den Zeilenumbruch zwischen Teaser-Text der News und dem mehr-Link zu vermeiden (###MORE### fügt einen Extra-<div> für den mehr-Link ein) binden wir den mehr-Link folgendermaßen ein:
displayLatest.subheader_stdWrap {
append = TEXT
append.data = register:newsMoreLink
append.wrap = <span class="news-list-morelink"> |</span>
}
Das funktionierte bisher immer ganz gut, das Frontend gab artig folgendes aus (ohne Leerzeichen in den amp-Entities):
<a href="index.php?id=484& amp;tx_ttnews%5Btt_news%5D=68& amp;tx_ttnews%5BbackPid%5D=592& amp;cHash=XXXXXX" title="XXXX">[mehr]</a>
Seitdem der tinyMCE installiert ist, werden die Entities für den more-Link anscheinend noch einmal geparsed und das ganze sieht so aus, mit dem Erfolg, dass die Links zur Singleanzeige ins Nirvana gehen (oder zumindest eine ungültige ID ergeben):
<a href="index.php?id=484& amp;amp;tx_ttnews%5Btt_news%5D=68& amp;amp;tx_ttnews%5BbackPid%5D=592& amp;amp;cHash=XXXXXX" title="XXXX">[mehr]</a>
Alle anderen Links mit Entities funktionieren aber trotzdem noch einwandfrei, der Fehler scheint nur bei Zugriff auf register:newsMoreLink zuzugreifen.
Vermutung: TinyMCE scheint irgendwie sämtlichen Frontend-Content beim Rendern abzugreifen und Entities zu parsen. Unglücklicherweise übersieht tinyMCE, dass der Content in register:newsMoreLink bereits geparsed wurde und parsed das & in & amp; gleich nochmal (weil beim ersten Mal so schön war).
:o
#angry#
Frage 1:
Auf welcher/n Ebene(n) greift der tinyMCE-HTML-Parser ein und wie kann man ihm das abgewöhnen?
Frage 2:
Wo genau und in welcher Form sind die register-Dateninhalte abgelegt? Ich habe versucht per "append.parseFunc.short.amp; = " dem mehr-Link die überflüssigen amps abzunehmen, hat leider nicht geklappt.