---
title: "TCA showitem per TS anpassen?"
url: "https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen"
source: "typo3.net"
tags: ["TYPO3","TypoScript","Frage","TCA"]
created: "2008-01-29"
last_reply: "2008-01-29"
replies: 10
solved: false
page: 1
pages: 1
lang: "de"
---

# TCA showitem per TS anpassen?

TYPO3 › TypoScript · 10 Antworten · gestartet 2008-01-29

## Eröffnungsbeitrag

**JayR** · 2008-01-29 · [Beitrag #1](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/1)

Hallo zusammen,

ich versuche gerade die Reihenfolge eines "fe_users" in der Listenansicht zu ändern. Die Tabelle "fe_users" wurde um einige Felder erweitert (aus verschiedenen Extensions!).

Nun würde ich gerne die Anzahl der Elemente sowie deren Reihenfolge per TypoScript anpassen. Es soll für verschiedene Benutzergruppen unterschiedliche Ansichten der "fe_users" geben. Über die Zugriffsrechte kann ich zwar die Anzeige der einzelnen Elemente steuern, aber leider nicht deren Reihenfolge.

Ist es denn überhaupt möglich den TCA->showitem-Array via Typoscript anzupassen?

Oder gibt es da eine einfachere Methode welche die Reihenfolge ändert? Wie macht Ihr das?

Vielen Dank schon mal im Voraus.
Gruß Jan

## Antworten

### [#2](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/2) · just2b · 2008-01-29

Hallo,

IMO geht das nicht

georg

### [#3](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/3) · JayR · 2008-01-29

Hi Georg,

danke für die schnelle Antwort! :'(
Das hatte ich mir fast schon gedacht!

Du kannst mir aber sicher sagen in welcher Reihenfolge sich die Showitems intern zusammensetzen!? Ich habe nämlich folgendes Problem.

Die fe_users wurde durch die Installation von tt_products sowie einer eigenen Extension um einige Felder erweitert. Nun würde ich gerne zumindest die Reihenfolge aller Felder ändern. Da keine weiteren Felder mehr dazukommen, darf es auch Quick&Dirty sein.

Ich habe in der tca.php meiner eigenen Extension noch folgenden Code eingefügt:
(gekürzt)

```php
$TCA['fe_users']['types'][0]['showItem']= 'username;;;;2-2-2,password,salutation,first_name,last_name,tt_products_creditpoints';
```

Dieser Code bewirkt jedoch rein gar nichts!
Vermutlich wird der Array an anderer Stelle wieder überschrieben.

Wie kann ich zuverlässig den Array überschreiben?

Viele Grüße
Jan

### [#4](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/4) · just2b · 2008-01-29

installier deine extension als letztes

georg

### [#5](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/5) · JayR · 2008-01-29

Ich hab den Codeschnipsel in die ext_tables.php gepackt und die Extension neu installiert. Jetzt funzt es!

Vorher sollte übrigens der Cache in /typo3conf gelöscht werden!

Dabei ist die Datei "temp_CACHED_XXXXX_ext_tables.php" übrigens sehr interessant. Sie zeigt in welcher Reihenfolge die einzelnen ext_tables.php geladen werden.

Vielen Dank!
Gruß Jan

### [#6](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/6) · JayR · 2008-01-29

Also nochmal zurück. Das letzte Posting war Blödsinn. Sorry.

Ich hab dummerweise einen Datensatz der Tabelle sys_products_orders angeklickt. Dieser sieht (abgesehen von den Benutzergruppen) schon ziemlich genauso aus wie der fe-users Datensatz aussehen sollte.

Hier mal die zwei wichtigen Dateien meiner Extension:

ext_tables.php

```php
<?php
if (!defined ('TYPO3_MODE')) 	die ('Access denied.');
$tempColumns = Array (
	"tx_myextension_firstname" => Array (		
		"exclude" => 1,		
		"label" => "LLL:EXT:medtronikusers/locallang_db.xml:fe_users.tx_medtronikusers_firstname",		
		"config" => Array (
			"type" => "input",	
			"size" => "30",
		)
	),
	"tx_myextension_lastname" => Array (		
		"exclude" => 1,		
		"label" => "LLL:EXT:medtronikusers/locallang_db.xml:fe_users.tx_medtronikusers_lastname",		
		"config" => Array (
			"type" => "input",	
			"size" => "30",
		)
	),
	"tx_myextension_job" => Array (		
		"exclude" => 1,		
		"label" => "LLL:EXT:medtronikusers/locallang_db.xml:fe_users.tx_medtronikusers_job",		
		"config" => Array (
			"type" => "input",	
			"size" => "30",
		)
	),
	"tx_myextension_newsletter" => Array (		
		"exclude" => 1,		
		"label" => "LLL:EXT:medtronikusers/locallang_db.xml:fe_users.tx_medtronikusers_newsletter",		
		"config" => Array (
			"type" => "check",
		)
	),
);


t3lib_div::loadTCA("fe_users");
t3lib_extMgm::addTCAcolumns("fe_users",$tempColumns,1);
t3lib_extMgm::addToAllTCAtypes("fe_users","tx_myextension_gender;;;;1-1-1, tx_myextension_firstname, tx_myextension_lastname, tx_myextension_job, tx_myextension_clinic, tx_myextension_newsletter");

//Reihenfolge der Items in fe_users anpassen - Das funzt schon mal nicht!
$TCA['fe_users']['types'][0]['showItem']= 'username;;;;2-2-2, password, usergroup, lockToDomain, --div--, name;;2;;3-3-3, tx_myextension_firstname, tx_myextension_lastname, address, zip, city, country, telephone, fax, email, tx_myextension_job,  tx_myextension_newsletter, www, image;;;;4-4-4, --div--, TSconfig;;;;5-5-5, tt_products_creditpoints;;;;1-1-1, tt_products_vouchercode;;;;1-1-1, tt_products_memoItems;;;;1-1-1, tt_products_discount;;;;1-1-1, tt_products_vat;;;;1-1-1';
?>
```

und die tca.php

```php
<?php
if (!defined ('TYPO3_MODE')) 	die ('Access denied.');

$TCA['fe_users']['types'][0]['showItem']= 'username;;;;2-2-2, password, usergroup, lockToDomain, --div--, name;;2;;3-3-3, tx_myextension_firstname, tx_myextension_lastname, address, zip, city, country, telephone, fax, email, tx_myextension_job,  tx_myextension_newsletter, www, image;;;;4-4-4, --div--, TSconfig;;;;5-5-5, tt_products_creditpoints;;;;1-1-1, tt_products_vouchercode;;;;1-1-1, tt_products_memoItems;;;;1-1-1, tt_products_discount;;;;1-1-1, tt_products_vat;;;;1-1-1';
?>
```

Nach einer Neuinstallation der Extension ändert sich die Reihenfolge in der Listenansicht aber nicht.

Die Datei tca.php wird aber immer automatisch geladen? Oder muss ich die noch irgendwo einbinden?

Gruß Jan

### [#7](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/7) · just2b · 2008-01-29

um was zu modifizieren brauchst du es in einer ext_tables.php.

du kannst dir ja auch einfach dort das TCA ausgeben lassen vor/nach der modifikation

georg

### [#8](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/8) · JayR · 2008-01-29

wie gibt man das tca vor und nach der modifikation aus?
ein einfaches print_r funktioniert nicht...

### [#9](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/9) · just2b · 2008-01-29

sollte schon bzw probier mal ein
$GLOBALS['TCA']....

georg

### [#10](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/10) · JayR · 2008-01-29

Natürlich hast Du recht...
Wenn man den Code in die ext-tables.php packt und nicht in die tca.php gehts natürlich.
Der Tipp mit Vorher/Nachher war dennoch Gold wert!
In dem obigen Code ist ein Schreibfehler. Es heißt showitem und NICHT showItem.

Da hab ich wohl irgendwo einen fehler per copy&paste übernommen!

Vielen Dank für Deine Hilfe!!!!
Gruß Jan

### [#11](https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen/11) · just2b · 2008-01-29

schön wenns funkt ;)

georg

---

Quelle: „TCA showitem per TS anpassen?“, typo3.net, https://www.typo3.net/d/73047-tca-showitem-per-ts-anpassen
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
