TYPO3 Blog -> Kategorien -> TYPO3 Extension Programmierung -> Neuer Tab in TYPO3 Flexform

Neuer Tab in TYPO3 Flexform

Neuer Tab in TYPO3 Flexform

 

Flexform Palette, Flexform Tab aus TYPO3 Extension

Flexform Tab in Seiteneigenschaften (pages) aus eigener TYPO3 Extension

Seit TYPO3 4.2 haben TYPO3 Extension Programmierer ein Problem, wenn sie weitere Felder zu bestehenden Tabellen wie pages oder tt_content hinzufügen wollen.

 

Wärend bei früheren TYPO3 Versionen die neuen Felder einfach automatisch per folgendem Befehl in der ext_tables.php der TYPO3 Extension an die Seiteneigenschaften o.ä. angefügt wurden, landen diese nun in einem Tab Namens "Zugriff" / "Access" bei den Tabellen "pages" und "tt_content". Dort erwartet man die neu hinzugefügten Felder jedoch nicht.

 

t3lib_extMgm::addToAllTCAtypes("pages","tx_lodesign_color;;;;1-1-1, tx_lodesign_image";

Dieser Typoscript Code fügte bis TYPO3 Version 4.1 das neue Feld der TYPO3 Extension an das Ende der eingabeseite an, heute fügt es die Felder im Tab "Zugriff" / "Acces" an.

 

Wenn es sich um mehrere Felder handelt, sollten diese, grade bei TYPO3 Tabelle "pages" in einem eigenen neuen Tab (siehe Screenshot) angelegt werden. Einen neuen Tab für die TYPO3 Tabelle "pages" legt man wie folgt in der ext_tables.php der TYPO3 Extension an:

t3lib_extMgm::addToAllTCAtypes("pages",
"--div--;Design,tx_lodesign_color;;;;1-1-1, tx_lodesign_image";

 

Möchte man neue Felder zu allen Typen der TYPO3 Tabelle tt_content hinzufügen, so empfielt sich die obere Vorgehensweise. Oft jedoch werden Felder nur in bestimmten Typen gebraucht, in der Regel nur im eigenen Plugin.

 

Dies erreicht man, indem man diesen Code in der ext_tables.php der TYPO3 Extension angibt:

t3lib_div::loadTCA("tt_content";
t3lib_extMgm::addTCAcolumns("tt_content",$tempColumns,1;

$TCA['tt_content']['types']['list']['subtypes_excludelist'][$_EXTKEY.'_pi1']
='layout,select_key, pages';
$TCA['tt_content']['types']['list']['subtypes_addlist'][$_EXTKEY.'_pi1']
='tx_loformular_title;;;;1-1-1, tx_loformular_pages';

 

Pages in der subtypes_excludelist unterdrückt die Ausgabe des Feldes "Ausgangspunkt" in dem TYPO3 Plugin. Möchte man dieses anzeigen, sollte es natürlich nicht in der subtypes_excludelist Liste stehen. Die zweite Liste gibt alle Felder an, die in dem Tab "plugin" stehen sollen.

 

Das Hinzufügen von Feldern zu bestimmten Seitentypen läuft analog.

 Access   Feld hinzufügen   Flexforms   Palette   TYPO3 4.2   Tab   Typo3 Flexform   ZUgriff   ext_tables.php   tt_content 

 

Ins Gästebuch eintragen