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

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.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.