TinyMCE: forced_root_block produziert nur br statt Absatz
TinyMCE: forced_root_block produziert nur br statt Absatz
Hallo,
in den ex-4.8.18er Versionen, denen ich das Upgrade 4.9 spendiert habe, führt die Mandanteneinstellung
tinymce / forced_root_block
zu einem anderen Verhalten als zuvor.
Die Einstellung habe ich in allen Installationen vorgenommen, damit z.B. die Container, insbesondere nicht die h1-Überschriften, mit einem p-Tag versehen wurden. Dennoch war es so, dass wenn sich z.B. ein leere Content-Container öffnete und ich irgendwann auf die Absatztaste haute, ein echter Absatz produziert wurde ODER - wenn ich den Text selbst als Absatz formatiert habe - beim Drücken der Enter-Taste dann auch ein echter neuer Absatz erzeugt wurde.
Dies ist mit o.g. tiny-Einstellung anders in 4.9: hier produziert die Enter-Taste nur einen weichen Umbruch, auch innerhalb von Absätzen (also br), und wenn ich einen echten Absatz will, muss ich auf Umschalt/Enter drücken - das ist doch aber genau anders rum belegt als sonst üblich.
Ist das ein Bug in TinyMCE oder Contenido oder....?
LG
in den ex-4.8.18er Versionen, denen ich das Upgrade 4.9 spendiert habe, führt die Mandanteneinstellung
tinymce / forced_root_block
zu einem anderen Verhalten als zuvor.
Die Einstellung habe ich in allen Installationen vorgenommen, damit z.B. die Container, insbesondere nicht die h1-Überschriften, mit einem p-Tag versehen wurden. Dennoch war es so, dass wenn sich z.B. ein leere Content-Container öffnete und ich irgendwann auf die Absatztaste haute, ein echter Absatz produziert wurde ODER - wenn ich den Text selbst als Absatz formatiert habe - beim Drücken der Enter-Taste dann auch ein echter neuer Absatz erzeugt wurde.
Dies ist mit o.g. tiny-Einstellung anders in 4.9: hier produziert die Enter-Taste nur einen weichen Umbruch, auch innerhalb von Absätzen (also br), und wenn ich einen echten Absatz will, muss ich auf Umschalt/Enter drücken - das ist doch aber genau anders rum belegt als sonst üblich.
Ist das ein Bug in TinyMCE oder Contenido oder....?
LG
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Ergänzung nach neuerlichen Tests:
Gibt man - wie in der TinyDoku beschrieben - im Mandant den Wert ein:
tinymce - forced_root_block - true ("true" statt- wie früher - leer),
dann stimmt das Verhalten in den normalen Editorboxen wieder, ABER nicht in den Popupfenstern für den HTML-Code. Dort steht (insbesondere bei den Überschriften) dann x-mal "<true>" um den Text geklammert, und klickt man auf "Aktualisieren", dann kommen neue true-tags dazu, aber das Fenster schließt nicht (getestet für den Fall, dass in der Überschrift keinerlei weitere Formatierung steht, nur Text).
Sehr seltsam
Gibt man - wie in der TinyDoku beschrieben - im Mandant den Wert ein:
tinymce - forced_root_block - true ("true" statt- wie früher - leer),
dann stimmt das Verhalten in den normalen Editorboxen wieder, ABER nicht in den Popupfenstern für den HTML-Code. Dort steht (insbesondere bei den Überschriften) dann x-mal "<true>" um den Text geklammert, und klickt man auf "Aktualisieren", dann kommen neue true-tags dazu, aber das Fenster schließt nicht (getestet für den Fall, dass in der Überschrift keinerlei weitere Formatierung steht, nur Text).
Sehr seltsam
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Hallo homtata,
bin gerade auf deinen Beitrag hier gestoßen, der ja schon etwas älter ist. Vielleicht hilft es dir trotzdem noch:
Die Einstellung "forced_root_block" habe ich persönlich noch nie mit dem Wert "true" oder ganz ohne Wert (leer) verwendet, sondern immer nur mit dem Wert "false" - um den Root-Block gänzlich zu deaktivieren.
Laut Doku gibt man dort entweder das konkrete Tag (z.B. "p") an, das als Root-Block verwendet werden soll (von daher wäre die Klammerung mit "true" sogar formal korrekt), oder eben "false", um die Klammerung ganz zu verhindern:
http://www.tinymce.com/wiki.php/Configu ... root_block
Gruß
Dominik
bin gerade auf deinen Beitrag hier gestoßen, der ja schon etwas älter ist. Vielleicht hilft es dir trotzdem noch:
Die Einstellung "forced_root_block" habe ich persönlich noch nie mit dem Wert "true" oder ganz ohne Wert (leer) verwendet, sondern immer nur mit dem Wert "false" - um den Root-Block gänzlich zu deaktivieren.
Laut Doku gibt man dort entweder das konkrete Tag (z.B. "p") an, das als Root-Block verwendet werden soll (von daher wäre die Klammerung mit "true" sogar formal korrekt), oder eben "false", um die Klammerung ganz zu verhindern:
http://www.tinymce.com/wiki.php/Configu ... root_block
Gruß
Dominik
karriere-suedwestfalen.de / immobilien-suedwestfalen.de - powered by CONTENIDO
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Hallo Dominik,
danke für die Info
Leider löst dies mein Problem mit dem Zeilenvorschub/Absatz nicht. Ob der Wert "false" oder leer ist, ändert am Verhalten an sich nichts, das habe ich gerade nochmal getestet.
Nur wenn der Wert auf "true" steht, springt das Verhalten für "enter" um, mit den oben beschriebenen "Nebenwirkungen"....
LG
Viktor
danke für die Info
Leider löst dies mein Problem mit dem Zeilenvorschub/Absatz nicht. Ob der Wert "false" oder leer ist, ändert am Verhalten an sich nichts, das habe ich gerade nochmal getestet.
Nur wenn der Wert auf "true" steht, springt das Verhalten für "enter" um, mit den oben beschriebenen "Nebenwirkungen"....
LG
Viktor
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Tut mir leid - ich muss das Thema noch mal pushen, weil das für meine Redakteure echt zur Katastrophe wird.
Offensichtlich ist es ein geändertes Tiny-Verhalten, dass der Editor bei "Enter" einen weichen Umbruch (br) produziert und bei String-Enter einen Absatz (p). Ätzend. Die Mandanteneinstellung forced_root_block / true ändert dieses Verhalten und verkehrt es ins gewünschte Gegenteil, ABER dann spinnen die HTML-Editorenansichten, wie schon beschrieben.
Es ist ja eigentlich nur nötig, dass Tiny aufhört, den Wert "true" wie einen TAG zu behandeln und ständig <true> in den Quellcode zu schreiben. Das ist doch recht offensichtlich ein Bug im Tiny...
Lässt sich das nicht abstellen?
LG
Offensichtlich ist es ein geändertes Tiny-Verhalten, dass der Editor bei "Enter" einen weichen Umbruch (br) produziert und bei String-Enter einen Absatz (p). Ätzend. Die Mandanteneinstellung forced_root_block / true ändert dieses Verhalten und verkehrt es ins gewünschte Gegenteil, ABER dann spinnen die HTML-Editorenansichten, wie schon beschrieben.
Es ist ja eigentlich nur nötig, dass Tiny aufhört, den Wert "true" wie einen TAG zu behandeln und ständig <true> in den Quellcode zu schreiben. Das ist doch recht offensichtlich ein Bug im Tiny...
Lässt sich das nicht abstellen?
LG
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Hallo homtata,
Laut Beschreibung auf tinymce.org muss für forced_root_block das auszugebende Tag angegeben werde3n, also in deinem Fall p.
Der Grund ist wohl, dass manche Anwender u.U. keine Paragraphen, sondern z.B. DIVs haben möchten.
Gruß
René
Nein, das istz kein Bug.homtata hat geschrieben:Es ist ja eigentlich nur nötig, dass Tiny aufhört, den Wert "true" wie einen TAG zu behandeln und ständig <true> in den Quellcode zu schreiben. Das ist doch recht offensichtlich ein Bug im Tiny...
Laut Beschreibung auf tinymce.org muss für forced_root_block das auszugebende Tag angegeben werde3n, also in deinem Fall p.
Der Grund ist wohl, dass manche Anwender u.U. keine Paragraphen, sondern z.B. DIVs haben möchten.
Gruß
René
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Hallo René,
danke für die Info. Trotzdem: so ist das doch jetzt Mist. Ich WILL forced_root_block eigentlich leer lassen, damit (wie bisher) keine umklammernden p-Tags generiert werden, da dies z.B. in den Headline-Containern sonst zu "<h1><p>headline</p></h1>" führt. Will ich vermeiden. Denn sonst muss ich nach dem Upgrade aller Bestandsseiten die Ausgabe der Text- und Headlinecontainer komplett neu checken, damit die Stylesheets nicht verhauen werden.
Gleichzeitig will ich nicht alle Redakteure umgewöhnen auf andere Tastenkombinationen für Absätze und Umbrüche, zumal diese Tastenkombis in KEINER anderen Software so verdreht gehandhabt werden. Und es ist ärgerlich, dass Tiny jetzt Verhalten A (die Tastenkombinationen für Umbrüche) an Einstellung B (Umklammernde Tags) koppelt (warum auch immer).
Das ist wirklich dusselig grad, und ich weiß nicht, wie ich das anpacken soll. Ich google mich zu Tode und schaue die Tiny-Quelltexte durch, aber ich finde keinen Angriffspunkt, wie ich ihm das Verdrehen der Tastaturkombis unterbinden soll.
Hat irgendjemand damit mehr Erfahrung?
Liebe Grüße an alle
danke für die Info. Trotzdem: so ist das doch jetzt Mist. Ich WILL forced_root_block eigentlich leer lassen, damit (wie bisher) keine umklammernden p-Tags generiert werden, da dies z.B. in den Headline-Containern sonst zu "<h1><p>headline</p></h1>" führt. Will ich vermeiden. Denn sonst muss ich nach dem Upgrade aller Bestandsseiten die Ausgabe der Text- und Headlinecontainer komplett neu checken, damit die Stylesheets nicht verhauen werden.
Gleichzeitig will ich nicht alle Redakteure umgewöhnen auf andere Tastenkombinationen für Absätze und Umbrüche, zumal diese Tastenkombis in KEINER anderen Software so verdreht gehandhabt werden. Und es ist ärgerlich, dass Tiny jetzt Verhalten A (die Tastenkombinationen für Umbrüche) an Einstellung B (Umklammernde Tags) koppelt (warum auch immer).
Das ist wirklich dusselig grad, und ich weiß nicht, wie ich das anpacken soll. Ich google mich zu Tode und schaue die Tiny-Quelltexte durch, aber ich finde keinen Angriffspunkt, wie ich ihm das Verdrehen der Tastaturkombis unterbinden soll.
Hat irgendjemand damit mehr Erfahrung?
Liebe Grüße an alle
Re: TinyMCE: forced_root_block produziert nur br statt Absat
Wenn du forced_root_block weg lässt, oder es auf p einstellst, funktioniert der Editor wie gewünscht.
In den Headline-Modulen musst du die Ausgabe dann nur bereinigen:
Wenn du bestimmte Tags in den Headlines erhalten möchtest (z.B. br und/oder span), musst du diese in strip_tags als zweiten Parameter angeben (einfache Form):
Gruß
René
In den Headline-Modulen musst du die Ausgabe dann nur bereinigen:
Code: Alles auswählen
<?php
if ($edit) {
echo "CMS_HTMLHEAD[1]";
} else {
echo strip_tags("CMS_HTMLHEAD[1]");
}
?>
Code: Alles auswählen
strip_tags("CMS_HTMLHEAD[1]", '<br><span>')
René