Zum Inhalt springen

Ckeditor Typo3 v10.x

Erstellt am 18. Juni 2020 · 8 Antworten · letzte Antwort am 23. Juni 2020

Tags: Frage

wtdesign ·

Hallo zusammen,

wie kann man den CKeditor in der neuesten TYPO3 Version 10.4.4 konfigurieren?

Zuvor war dies in der LocalConfiguration.php möglich

<?php
return [
...

    'RTE' => [
        'Presets' => [
            'custom1' => 'fileadmin/fluid_styled_content/rte/Full.yaml',
        ],
    ],
...

In der TsConfig der Root-Seite habe ich noch folgendes integriert

RTE.default.preset = custom1

Die YAML- Datei liegt dort wo ich es in der LocalConfiguration.php festgelegt habe. Keine der darin vorgenommenen Einstellungen scheinen aber zu funktionieren. Keine Stile und nichts.
Kann mir jmd. weiterhelfen?

Viele Grüße

Julian.​Hofmann ·

Sollte so immernoch funktionieren.

Hast Du schon geprüft, dass bei Teile übernommen sind, d.h.
- in $GLOBALS['TYPO3_CONF_VARS']['RTE'] die Ergänzung ankam (Configuration-Modul -> $GLOBALS['TYPO3_CONF_VARS']) und
- TsConfig im Page TSconfig auch auftaucht (Info-Modul -> Page TSconfig)?

wtdesign ·

Ja, wird alles so übernommen. Dennoch ist ein Anpassen der YAML nicht möglich.

Testweise habe ich sogar Original-YAML-Dateien verwendet. Aber auch diese wurden nicht angenommen.

Julian.​Hofmann ·

Hm, Caches hast Du vermutlich auch schon sehr sorgfältig geleert...
"custom1" ist vermutlich Platzhalter. Die Schreibweise ist an beiden Stellen identisch?

Nachdem Du auch die Original YAML mal getestet hast, sind auch F<ehler in der YAML-Datei auszuschließen.... Hm...

Hab eben das ganze nochmal in einem TYPO3 v10.4.3 getestet: ich bekomme die Konfiguration übernommen.

Mir fällt nix mehr ein :-(

Julian.​Hofmann ·

Eben noch aufgefallen:
in die LocalConfiguration.php willst Du sowas nicht schreiben. Die schreibt/ändert/verwaltet TYPO3. Ergänzungen willst Du via AdditionalConfiguration.php angeben 😉

wtdesign ·

Ja, die Schreibweise ist identisch. Habe das was ich hier gepostet habe per Copy & Paste eingebunden. Da sieht man auch, dass die Schreibweise korrekt ist.

Welche Schritte hast du denn gemacht als du die YAML eingebunden hast?

Du hast eine "AdditionalConfigutation.php" angelegt und folgendes hineingeschrieben?

<?php
return [
    'RTE' => [
        'Presets' => [
            'custom1' => 'fileadmin/fluid_styled_content/rte/Full.yaml',
        ],
    ],
];

und dann hast du ins Ts-Config der Root-Seite auch folgendes integriert?

RTE.default.preset = custom1

Ich habe jetzt auch noch die AdditionalConfiguration.php angelegt und obiges Snippet eingefügt, aber es wird einfach nicht übernommen.
Der RTE bietet weiterhin nicht die Möglichkeit zum Beispiel Stile, die ich erstellt habe auszuwählen. Das einzige Dropdown was es dort gibt, ist das bei welchem man die Überschrift bzw den Paragraphen auswählen kann.

Julian.​Hofmann ·

Hab Deinen Weg durchgetestet, d.h. in der LocalConfiguration.php den Array-Key "RTE" samt Konfiguration ergänzt, dann in Seiteneigenschaften der Root-Page (Resources -> Page TSconfig) "RTE.default.preset = custom1" ergänzt. Meine yaml-Datei lag auch im fileadmin.
Hatte zum Testen in der yaml-Datei mal 2-3 Einträge der "toolbarGroups" rausgelöscht.

Die AdditionalConfigutation.php wird nicht via return aufgebaut. Dort werden die Werte direkt ins Array geschrieben bzw. gemischt:

<?php
$customChanges = [
    'SYS' => [
        'sitename' => 'Meine tolle TYPO3-Seite',
    ]
];
$GLOBALS['TYPO3_CONF_VARS'] = array_replace_recursive($GLOBALS['TYPO3_CONF_VARS'], (array)$customChanges);

https://docs.typo3.org/m/typo3/reference-inside/8.7/en-us/CoreArchitecture/Configuration/AdditionalConfiguration/Index.html

wtdesign · · Beste Antwort

Hallo Julian,

vielen Dank schon einmal für deinen Hinweis was die AdditionalConfiguration.php angeht.
Das führte jedoch auch nicht zum Erfolg.

Die Lösung warum das nicht geklappt hat lag daran, dass ich nur MASK-Elemente verwende. Also ein Plugin, welches eigene Content-Elemente ermöglicht. Da funktioniert es dann leider nicht mehr, dass man einfach folgendes ins TsConfig hineinschreibt.

RTE.default.preset = custom1

Man muss wohl ab sofort für jedes in Mask erstellte Element extra einstellen welche Felder mit "custom1" ausgestattet werden. Z.B. wie unten stehend. Das gleiche gilt auch für den RTE bei News.

RTE.config.tx_news_domain_model_news.bodytext.preset = custom1
RTE.config.tt_content.bodytext.preset = custom1
RTE.config.tt_content.tx_mask_text1.preset = custom1
RTE.config.tt_content.tx_mask_text2.preset = custom1
RTE.config.tt_content.tx_mask_textumfluss1.preset = custom1
RTE.config.tt_content.tx_mask_textumfluss2.preset = custom1

So klappt das dann auch.

wtdesign ·

Wenn man in der AdditionalConfiguration.php statt "custom1" einfach "default" hineinschreibt, so wird die Standardkonfiguration durch meine ersetzt und ich muss in der TsConfig nicht mehr alles einzeln auffähren. Sprich in die TsConfig muss ich gar nichts mehr reinschreiben.

So sieht nun die "AdditionalConfiguration.php" aus:

<?php
$customChanges=  [
    'RTE' => [
        'Presets' => [
            'default' => 'fileadmin/fluid_styled_content/rte/Full.yaml',
        ],
    ],
];


$GLOBALS['TYPO3_CONF_VARS'] = array_replace_recursive($GLOBALS['TYPO3_CONF_VARS'], (array)$customChanges);