Hallo Benjamin,
vielen Dank fürs Mitdenken und die Erklärungen.

Im konkreten Fall reicht es für mich zum Glück, dass die Default Action 
aufgerufen wird.

Am 24.01.2013 um 11:44 schrieb Benjamin Rau:
> Du kannst Extbase-konform ein Plugin nur global steuern. 
> Das liegt ganz einfach daran dass Extbase die Werte im Request auf Basis des 
> Prefixes Extensionname - Pluginname (tx_yourext_yourplugin) an die jeweilige 
> Extension übergibt.
> 
> Extbase wählt dann den auszuführenden Controller und Action auf Basis des 
> Requests (tx_yourext_yourplugin[controller] und 
> tx_yourext_yourplugin[action]).
> 
> Wie man hier sieht sind diese Parameter eben für alle Instanzen eines Plugins 
> identisch und können somit auch nicht unterschieden werden.
> 
> Wir hatten vor kurzem im IRC die gleiche Problematik zu lösen.
> 
> Was nicht geht ist dynamisch per Parameter die Controller und Actions der 
> verschiedenen Plugininstanzen zu überschreiben.
> 
> Was ginge wäre:
> Controller und Action per TS 'settings' für die Plugininstanz zu definieren - 
> per Flexform.
> Diese Werte kannst du im Controller auslesen und auf Basis dessen im 
> initializeView die Action überschreiben.
Diesen Teil verstehe ich nicht.

> Zusätzlich könnntest du, wenn weitere Argumente pro Instanz benötigt werden, 
> diesen einen Prefix/Suffix geben.
> Hier bietet sich z.b. die ID des Contentelements an - diese ist eindeutig und 
> pro Plugininstanz verschieden.
> 
> In der Praxis könnte dass dann für eine Pagination von zwei Plugininstanzen 
> so aussehen:
> tx_yourext_yourplugin[currentPage][242]=12
> tx_yourext_yourplugin[currentPage][532]=3
> tx_yourext_yourplugin[currentPage][532]=3&tx_yourext_yourplugin[currentPage][242]=12
> 
> Auf Array-Basis funktioniert dass ganz gut - wie gesagt ist überhaupt nicht 
> Extbase konform :)
Hm, klingt unelegant, oder?

Herzliche Grüße
Dirk

_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an