[gelöst] AJAX Aufruf verarbeiten

Hallo zusammen, ich möchte gern mittels AJAX einen Produktfinder auf der Startseite einbauen. Dazu soll man sich über mehrere Select-Felder direkt zur Kategorie “wählen” können. Leider steh ich da gerade so ziemlich auf dem Schlauch, was die Rückgabe des Controlles und die Einbindung der Antwort angeht. Meine Bootstrap: class Shopware\_Plugins\_Frontend\_ProductFinder\_Bootstrap extends Shopware\_Components\_Plugin\_Bootstrap { public function install() { $event = $this-\>createEvent( 'Enlight\_Controller\_Dispatcher\_ControllerPath\_Frontend\_ProductFinder', 'onGetControllerPathFrontend' ); $this-\>subscribeEvent($event); $event = $this-\>createEvent( 'Enlight\_Controller\_Action\_PostDispatch\_Frontend\_Index', 'onPostDispatchIndex' ); $this-\>subscribeEvent($event); } public static function onGetControllerPathFrontend(Enlight\_Event\_EventArgs $args) { return dirname(\_\_FILE\_\_).'/ProductFinder.php'; } public static function onPostDispatchIndex(Enlight\_Event\_EventArgs $args) { $request = $args-\>getSubject()-\>Request(); $response = $args-\>getSubject()-\>Response(); $view = $args-\>getSubject()-\>View(); $view-\>extendsTemplate(dirname(\_\_FILE\_\_).'/frontend/plugins/ProductFinder/index.tpl'); } } Der Controller: class Shopware\_Controllers\_Frontend\_ProductFinder extends Enlight\_Controller\_Action { public function indexAction(){ } public function nextCategoryAction(){ echo 'hallo'; return true; } } und die index.tpl dazu: [code] {block name=“frontend_index_header_javascript” append}{/block} {block name=‘frontend_home_left_productfinder’}

{se name=“HomeProductFinderHeadline”}{/se}

{/block} [/code] Es wird scheinbar auch die nextCategoryAction aufgerufen, aber ich bekomme die Antwort ‘hallo’ nicht zurück. Stattdessen bekomme ich im Firebug die Fehlermeldung: Unable to load template extends 'frontend/product\_finder/next\_category.tpl Scheinbar habe ich da irgendwo den totalen Denkfehler drin. Wer kann mir auf die Sprünge helfen?

Hallo, ggf. hilft es bereits in der nextCategoryAction folgende Zeile an den Anfang zu setzen: $this-\>View()-\>setTemplate(); Gruß, Patrick :shopware:

2 Likes

Jepp. Das wars schon. Danke. :slight_smile: