For coders TYPO3 Tech Corner

TYPO3 12 mit CKEditor 5: Stile als Einfachauswahl

TYPO3 12 mit CKEditor 5: Stile als Einfachauswahl

Wenn man im RTE in TYPO3 einen Link setzt, kann es sein, dass man zwischen verschiedenen Link-Klassen auswählen muss, um beispielsweise Buttons im Frontend zu erzeugen. Neu ist in TYPO3 12 dass man nicht nur einen Stil sondern mehrere Stile gleichzeitig auswählen kann. Wie man das mit einem CSS-Workarround verhindern kann, zeigen wir euch.

Stile kann man natürlich nicht nur für Links setzen, sondern für alle definierten Tags in der YAML-Konfiguration. In dieser Konfigurationsdatei kann mit mit dem Key contentsCss eine eigene CSS-Datei fürs Backend laden.

editor: config: contentsCss: ["EXT:sitepackage/Resources/Public/Css/Backend/CKeditor.css"]

Diese könnte beispielsweise so aussehen:

#EditDocumentController [id*='data_tt_content__'] { .ck-style-grid:has(.ck-on) .ck-off { pointer-events: none; opacity: 0.5; } }

Damit werden alle anderen Optionen deaktiviert, sobald ein Stil ausgewählt wurde. Dies ist nicht unbedingt ideal, da man zuerst eine vergebene Klasse deaktivieren muss, will man eine andere Klasse vergeben. Dennoch hilft dieser Workarround dem einen oder anderen Anwender.

Übrigens: Der umschließende Wrapper #EditDocumentController ist nicht unbedingt nötig, kann euch aber helfen, wenn ihr Klassen mit eurem CSS überschreiben wollt, die bereits von TYPO3 gesetzt wurden.

Hinweis: Wer an einer sauberen Lösung interessiert ist, kann das offizielle Ticket upvoten: https://github.com/ckeditor/ckeditor5/issues/14206

Kennst du das: Immer nur schnell schnell?

Wie wäre es einmal mit Zeit und Respekt für Codequalität? Arbeiten im Team? Automatisierte Tests?

Komm zu uns

SQL: Zeige alle Tabellen absteigend nach Größe sortiert

Ich brauche in letzter Zeit häufiger den SQL-Befehl, um herauszufinden, welche Tabellen in der TYPO3-Datenbank am größten sind. Ich habe das Snippet einmal veröffentlicht.

Zum Beitrag

Null-Safe Operator im TYPO3-Bereich

Spätestens mit dem Einzug von PHP8 kann es an vielen Stellen zu Problemen mit undefinierten Arrays oder Variablen im Allgemeinen kommen. Hier ein paar Beispiele und einfache Lösung dafür.

Zum Beitrag

Die ersten/letzten Zeilen einer (SQL)-Datei löschen

Zu den nachfolgenden Befehlen gibt es eigentlich nicht viel zu sagen. Manchmal kann es nützlich sein, die ersten (bzw. letzten) X Zeilen aus einer Datei zu löschen. Und wenn die Datei zu groß zum...

Zum Beitrag

b13/container: Kindelemente in der Bearbeitungsansicht hinzufügen und ändern

Anders als in gridelements kann man in der Extension Container von B13 die Kindelemente nicht verwalten, wenn man den Container in der Bearbeitungsansicht öffnet. Wie man das schnell selber einbauen...

Zum Beitrag

Menü-Vergleich: Zahlen, Zahlen, Zahlen

Zum Beitrag

Dropdown-Menü ohne Last - mittels Multilevel-Cache

Zum Beitrag