Hallo zusammen,
ich möchte im RTE ein Custom Tag verwenden und möchte den Inhalt in einer PHP-Funktion selbst rendern. So weit, so gut. Nun haut mir der RTE bei der Ausgabe im Frontend aber um jede Zeile ein <p>-Tag, das weder im Backend zu sehen ist noch in meinem PHP-Skript gesetzt wird.
Aber der Reihe nach:
Über den Kickstarter habe ich eine neue Extension erstellt, die ein Tag verarbeiten soll (es geht um SourceCode-Highlighting - ich weiß, dass es bereits entsprechende Extensions gibt, die entsprechen aber nicht meinen Anforderungen; und da ich bereits entsprechenden PHP-Code habe, will ich es auf diesem Wege machen).
Im Backend habe ich dann im RTE den Code eingegeben:
Code:
<meintag>for i:=1 to 100 do begin
ShowMessage('Hallo Welt');
end;</meintag> Ich habe darauf geachtet, dass alle Zeilenumbrüche darin <br> sind, nicht <p>.
Mein PHP-Code formatiert den Inhalt auch richtig, aber alle <br> sind verschwunden. Und die Zeilen werden von <p>...</p> umgeben - und zwar in völlig unsinniger Schachtelung. Obiger Code sieht im HTML-Quellcode des Frontends jetzt in etwa so aus:
Code:
<p><div class="code"><span class="hlRes">for </span><span class="hlNormal">i:=</span><span class="hlInt">1 </span><span class="hlRes">to </span><span class="hlInt">100 </span><span class="hlRes">do begin</p>
<p></span><span class="hlNormal"> ShowMessage(</span><span class="hlStr">'Hallo Welt'</span><span class="hlNormal">);</p>
<p></span><span class="hlRes">end</span><span class="hlNormal">;</span></div>
</p>
Die <span> sind richtig, die kommen von mir. Aber man beachte die </p> innerhalb der <span>..</span>! Im HTML-Quelltext ist das jeweils eine Zeile, die komplett von <p> umgeben wird.
Und jetzt meine Frage: Wie kann ich das loswerden? Ich habe schon stundenlang gesucht und auch einiges gefunden. Aber nichts hilft.
Am interessantesten sah für mich das aus:
Typoscript-Code:
1:
| lib.parseFunc_RTE.externalBlocks=div,table,ul,ol,meintag |
Daraufhin bleibt allerdings mein Custom Tag komplett erhalten und ist im HTML-Quellcode des Frontends zu sehen - und wird nicht von meiner Extension verarbeitet.
Ich hoffe, ich habe mein Problem einigermaßen verständlich erklärt. Schon mal im Voraus danke für Hilfe!
Martin