Ext: RTE für anderen Felder aktivieren.

RTE (Richtexteditor) in anderen Feldern aktivieren wie z.B. Bildbeschreibung

Manchmal will man auch in anderen Feldern außer dem Bodytext einen Editor haben, mit dem man HTML-Auszeichnungen setzen kann. hierzu muss man zuest eine Erweiterung erstellen oder eine eigene Erweiterung weiternutzen. Hier legt Ihr eine Datei mit dem Namen der Tabelle an; in diesem Beispiel aktivieren wir den RTE für die Bildbeschreibung:

 

Configuration/TCA/Overrides/sys_file_reference.php

 

Hier schreibt Ihr bis TYPO3 7 Folgendes hinein:

 

 <?php
   defined('TYPO3_MODE') or die();

   $tempColumns = [
    'description' => array(
        'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.description',
        'config' => array(
            'type' => 'text',
            'cols' => 40,
            'rows' => 15,
            'eval' => 'trim'
        ),
        'defaultExtras' => 'richtext[]:rte_transform[mode=ts_links]'
    ),
];

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(
    'sys_file_reference',
    $tempColumns,
    1
);

 

Ab TYPO3 8 gilt dies:

 

 <?php
   defined('TYPO3_MODE') or die();

   $tempColumns = [
    'description' => array(
        'label' => 'LLL:EXT:lang/Resources/Private/Language/locallang_tca.xlf:sys_file_reference.description',
        'config' => array(
            'type' => 'text',
            'cols' => 40,
            'rows' => 15,
            'eval' => 'trim',
            'enableRichtext' => true
        ),
    ),
];

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(
    'sys_file_reference',
    $tempColumns,
    1
);

 

Schon könnt Ihr den RTE in der Bildbeschreibung nutzen. Nur werden die HTML-Tags in der Ausgabe kodiert. Um das zu ändern müsst Ihr noch das Fluid Styled Content Partial ändern:

Partials/Media/Type/Image.html:

 

    <f:if condition="{file.description}">
        <figcaption class="image-caption">
            <f:format.raw>{file.description}</f:format.raw>
        </figcaption>
    </f:if>

 

Ergänze das fett gedruckt und schon sollte es gehen