Hallo,
wir möchten per Plugin die Artikel um einige Infos erweitern. Das funktioniert soweit auch im Listing. Sobald allerdings ein Filter geschaltet wird oder auch per Infinite Scroll nachgeladen wird,
werden die zusätzlichen Infos durch das Plugin nicht mehr übergeben.
Nach langem probieren und auch Suchen im Forum haben wir folgende Event bereits erfolglos getestet:
'Enlight_Controller_Action_PostDispatch_Widgets_Listing' =>'OnAjaxFilterPost',
'Enlight_Controller_Action_PreDispatch_Widgets'=>'OnAjaxFilterPost',
'Enlight_Controller_Action_PostDispatchSecure_Widgets_Listing'=>'OnAjaxFilterPost',
'Enlight_Controller_Action_PostDispatchSecure_Widgets'=>'OnAjaxFilterPost',
auch als Hook läuft es nicht:
'Shopware_Controllers_Widgets_Listing::ajaxListingAction::after'=>'OnAjaxFilterPostHook',
'Shopware_Controllers_Widgets_Listing::listingCountAction::after'=>'OnAjaxFilterPostHook',
Hier noch die OnAjaxFilterPost Function:
public function OnAjaxFilterPost(\Enlight_Event_EventArgs $args)
{
$view = $args->getSubject()->View();
$sArticles = $view->getAssign('sArticles');
foreach($sArticles as &$art)
{
$art['testField'] = "testField";
}
$view->assign('sArticles', $sArticles);
}
Laut xDebug wird das Array auch gefüllt.
Vorne im Template fehlen dann die Erweiterungen: Path: frontend/listing/listing_ajax.tpl
{$sArticles|print_r}
Als wenn ein anderes Event das Array überschreibt.
Gruss
Florian