TYPO3 Erweiterungen im bisherigen pi_base-Stil kann man ganz einfach mit
|
1 |
lib.foo < plugin.tx_extensionkey_pluginname |
in ein beliebiges TypoScript Objekt einfügen.
Mit neueren Erweiterungen die man mit Extbase und Fluid erstellt, gestaltet sich das (noch) etwas schwieriger. Hier muss man einen Umweg über eine userFunc mit dem Extbase Bootstrapper gehen.
Bei dem Beispiel handelt es sich um eine kleine Webshop Erweiterung die ich für ein Projekt geschrieben habe. Ziel ist es, eine Warenkorb Übersicht in der Sidebar auszugeben:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
lib.sidebar = COA
lib.sidebar {
# [...]
10 = USER
10 {
userFunc = tx_extbase_core_bootstrap->run
pluginName = Pi2
extensionName = ExtensionKey
controller = Cart
action = sidebar
switchableControllerActions {
Cart {
1 = sidebar
}
}
settings =< plugin.tx_extensionkey.settings
persistence =< plugin.tx_extensionkey.persistence
view =< plugin.tx_extensionkey.view
}
} |
Jetzt muss nur noch im Cart Controller (wie im TS angegeben) die sidebarAction implementiert werden, in der unsere gewünschte Ausgabe generiert wird. Das erfolgt üblicherweise mit einem Fluid Template - dazu wiederum das entsprechende Template sidebar.html im Templates/Cart Verzeichnis anlegen, in der sidebarAction mit $this->view->assign() die Templatevariablen zuweisen und schließlich die fertige Ausgabe mit return $this->view->render(); zurückgeben. Das return Statement bitte nicht vergessen denn sonst passiert gar nichts ![]()
hi,
i want to include extbase plugin with typoscript in TYPO 4.6 but it doesn’t work http://stackoverflow.com/questions/8759942/typo3-4-6-include-extbase-plugin-with-typoscript and i also tried it according your example, but nothing works. Thanks.
Posted by anjalis | 8. Januar 2012, 13:48