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