Im Typo3 Backend mit Extbase ein zusätzliches Feld hinzufügen


November 05, 2015 at 11:33
Typo3

Es ist ein Wunder geschehen! Ich habe ein Typo3 Problem gegoogelt und eine Antwort gefunden, die sogar funktioniert! Ich brauchte ein zusätzliches Feld in der tt_content, um jedem Contentelement eine einzigartige ID geben zu können. Also habe ich zuerst in der Datenbank der Tabelle tt_content ein neues Feld namens "tx_kurs_id" hinzugefügt. Anschließend habe ich in der ext_tables.php meiner Extension noch folgendes hinzugefügt:

$tempColumns = Array (
	"tx_kurs_id" => Array (
		"exclude" => 1,
		"label" => 'LLL:EXT:pgk_kurs/Resources/Private/Language/locallang_db.xml:tx_kurs_id.kursid',
		"config" => Array (
			'type' => 'input',
			'size' => 30,
			'eval' => 'trim'
		)
	),
);

t3lib_div::loadTCA("tt_content");
t3lib_extMgm::addTCAcolumns("tt_content",$tempColumns,1);
t3lib_extMgm::addToAllTCAtypes('tt_content','tx_kurs_id','','after:section_frame');

Interessant ist hier vor allem die letzte Zeile. Parameter 1 gibt die Typo3 Tabelle an, der ein Feld hinzugefügt werden soll. Der zweite Parameter ist der Name des Feldes (oben in $tempColumns definiert). Der dritte Parameter gibt an, bei welchen Inhaltselementen dieses Feld angezeigt werden soll (hatte Anfangs nur "bullets" stehen, wenn man es leer lässt gilt das Feld anscheinend für überall). Und der vierte Parameter gibt an, an welcher Stelle das Feld angezeigt werden soll (after/before). Um den Namen des Feldes rauszufinden, das man hierfür braucht, habe ich einfach im Quelltext nach der Bezeichnung des entsprechenden Textfeldes gesucht.


Tags: extbase TCA tt_content


Hinterlasse einen Kommentar:
Suche