Zum Inhalt springen

tca.php storage_pid rausfinden

Erstellt am 1. März 2005 · 3 Antworten · letzte Antwort am 27. März 2005

Tags: TCA, Kategorien, Frage

Flotter ·

Hallo Zusammen!

Habe mir eine Extension gebastelt, mit der man auch Kategorien anlegen kann. Man klickt auf "Neuen Datensatz anlegen" und hat seine Wizard-Oberfläche...und dann hat man das Feld Kategorien, wo man mit dem "+" neue Kategorien anlegen kann.

Folgender Code aus der tca.php:

		"category" => Array (		
			"exclude" => 1,		
			"label" => "LLL:EXT:ax_hotels/locallang_db.php:tx_ax.category",		
			'config' => Array (
				'type' => 'select',
				'foreign_table' => 'tx_axhotels_category',
				'foreign_table_where' => $fTableWhere.'ORDER BY tx_ax.category',
				'size' => 5,
				'autoSizeMax' => 10,
				'minitems' => 0,
				'maxitems' => 100,
				'MM' => 'tx_ax_category_mm',
				'wizards' => Array(
					'_PADDING' => 2,
					'_VERTICAL' => 1,
					'add' => Array(
						'type' => 'script',
						'title' => 'Create new category',
						'icon' => 'add.gif',
						'params' => Array(
							'table'=>'tx_ax_category',
							'pid' => '###STORAGE_PID###', // was muss hier hin?
							'setValue' => 'set'
						),
						'script' => 'wizard_add.php',
					),
					'edit' => Array(
							'type' => 'popup',
							'title' => 'Edit category',
							'script' => 'wizard_edit.php',
							'popup_onlyOpenIfSelected' => 1,
							'icon' => 'edit2.gif',
							'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1',
					),
				),
			)
		),

Diesen Code habe ich aus tt_news geklaut. Jetzt habe ich folgendes Problem: Wenn ich das tt_news Plugin installiert habe und einen Sysfolder angelegt habe, werden meine Kategorien immer in den sysfolder von tt_news gepackt, anstatt auf die Seite, wo mein Plugin installiert ist.

Das liegt an dem Marker ###STORAGE_PID###, wenn ich da hart die ID meiner Seite mit meinem Plugin eingebe, funktioniert es. Wenn ich im TypoScript meiner Extension die STORAGE_PID neu belege, funktioniert es nicht.

Jetzt meine Frage, wie bekomme ich die ID der Seite raus, wo meine Extension gerade liegt?

Also wenn ich meine Extension auf der Seite mit der ID=12 habe, würde ich gerne tca.php mitteilen, dass er die ID=12 nehmen soll.

Wenn mir jemand einen Tip geben könnte, wäre ich ihm/ihr sehr dankbar!

Gruß

Flotter ·

Hat sich erledigt :-)
Habe es selber rausgefunden...

Man muss nur auf "Seitentitel bearbeiten" und bei "Allgemeine
Datensatzsammlung" die Seite mit der Extension angeben.

mrmiagi1984 ·

Ich habe ein ähnliche Problem, will eine Extension erweitern um das CHC Forum zu durchsuchen.

In der DB der Posts gibt es ein Feld "pid" nur wenn ich ein Sysfolder erstelle, steht da nicht die pid der Page sondern halt des Sysfolders is ja klar.

Nur wie mach ich das jetzt wenn ich in den Results einen Typo Link auf einen Thread erzeugen möchte?

Wenn ich die pid in der DB nehme geht das ja nicht. Gibt es vielleicht eine Funktion die herausfindet welche Seiten in welcher Sysfolder Pid speichern?

Bin für jeden Tipp dankbar.