Danke. Aber eigentlich habe ich im Moment gar nicht das Problem. Es kam mir zwar auch schon unter, aber ich habe es halt mit zwei Plugins gelöst. Ist halt nicht so super - es könnte ja sein, dass man die selbe Funktionalität halt einfach mehrfach auf einer Seite braucht. Wenn man dann dann redundanterweise das Plugin zehn Mal kopiert hat, ist das wirklich nicht so schön. In meinem Fall war es aber in Ordnung.

Vielleicht ist dein ja Vorgehen sinnvoller. Kann das aber nicht so beurteilen. Bin nicht so der Crack...


Am 24.01.2013 11:44, schrieb Benjamin Rau:
Hallo Dirk.

Vorweg: Mögliche technische Ungenauigkeiten oder falsches Vokabular sei mir 
bitte verziehen :)

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.

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 :)

Vielleicht findest du im IRC #extbase ja den Betroffenen User der das vor 
wenigen Wochen für sich umgesetzt hat - und er kann den Code vllt weitergeben.

Gruß Benny


Mit freundlichen Grüßen
Best regards

Benjamin Rau
codearts

Am 24.01.2013 um 11:17 schrieb Robert Schneider <r.schnei...@artworx.at>:

Das löst aber nur das Problem, wenn die Default-Action aber auch akzeptabel 
ist, oder. Wenn man eine bestimmte Action haben will, dann braucht man ein 
zweites Plugin, oder?

Am 24.01.2013 09:53, schrieb Dirk Wenzel:
Hi Andreas,
tatsächlich, der Eintrag beschreibt dasselbe Problem und Dein Vorschlag löst es 
auch.
Vielen Dank!

For the records:
Die Exceptions haben unterschiedliche Nummern im genannten Issue: #1313855173
Ich verwende Extbase v4.7.7 mit TYPO3 4.7.7

(Scheint ein toller Tag für Problemlösungen zu sein, gleich mal ein paar olle 
Bugs raussuchen ; )
Herzliche Grüße

Am 24.01.2013 um 09:36 schrieb Andreas Kiessling:
das liest sich wie das Problem: http://forge.typo3.org/issues/31322

Probier mal:
plugin.tx_myplugin.mvc.callDefaultActionIfActionCantBeResolved = 1

HTH,



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



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

Reply via email to