Zum Inhalt springen

Ich habe heute zwei neue Versionen mit Bugfixes veröffentlicht: 3.1.0 (für TYPO3 v11/v12) sowie 2.2.0 (für TYPO3 v10/v11).

Übersetzung menschenlesbarer Anker im RTE

Bislang wurden Anker-Links im RTE (sowie Backend-Feldern vom Typ inputLink) nicht korrekt übersetzt. Stattdessen wurde immer das menschenlesbare Fragment der Originalsprache gerendert.

Ursache hierfür war der fehlende Sprach-Overlay im PSR-14 Event ModifyPageLinkConfigurationEvent (TYPO3 v12) bzw. im Hook typolinkModifyParameterForPageLinks (TYPO3 v10/v11).

Zur Lösung des Problems habe ich den Query Builder im Event/Hook durch ContentObjectRenderer->getRecords() ersetzt. Diese Funktion kümmert sich ab jetzt um den SELECT Query für den Ziel-Datensatz des Fragment-Links und berücksichtigt dabei automatisch den Sprach-Overlay.
Der Content Object Renderer wurde schon vorher an gleicher Stelle dazu verwendet, das fertige Fragment anhand der TypoScript-Konfiguration zu erstellen.

Backend-JavaScript (nur v3.1.0)

Inline-JavaScript für eigene eval-Funktionen ist seit TYPO3 12.4 deprecated.

Daher habe ich das Inline-JavaScript der Methode returnFieldJS() durch eine JavaScriptModuleInstruction ersetzt, mit der das JavaScript als neues Modul "FragmentEvaluation" geladen wird.

Im zweiten Modul "FillFragment" (Button zur Generierung des Fragments aus dem Header) wird "FragmentEvaluation" jetzt direkt geladen. Der alte Aufruf über TBE_EDITOR.customEvalFunctions konnte so entfallen.

Um mit der Extension TYPO3 v11 und v12 zu unterstützen, nutze ich vorerst das als deprecated markierte RequireJS als Module-Loader.

Bei der Anpassung war aufgefallen, dass es in TYPO3 v12 Probleme im Development-Kontext gibt. Der zwischenzeitlich im TYPO3-Core ergänzte CKEditor 5 inspector wird in diesem Kontext automatisch im RTE geladen und wirft dann einen Fehler ("Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'attach')").
Da dieser Fehler aber auch mit dem TypeInput21Eval-Beispiel der Styleguide-Extension auftritt, vermute ich hier einen Bug im TYPO3-Core bzgl. der noch jungen CKEditor-5-Integration.

Zur News-Übersicht