Hook für Shopware_Controllers_Backend_Order openPdfAction möglich?

Hallo zusammen,

meine Shopware-Version ist 5.1.2. Ich würde gerne die Methode openPdfAction im Controller Shopware_Controllers_Backend_Order ersetzen. (Das ist in der Datei engine/Shopware/Controllers/Backend/Order.php) Mein Plugin-Code dazu sieht so aus:

class Shopware_Plugins_Backend_BoostinternetInvoiceFilename_Bootstrap extends Shopware_Components_Plugin_Bootstrap
{
	...
	
	public function install()
	{
		$this->subscribeEvent('Order::openPdfAction::replace', 'openPdfActionWithFilenamePrefix');
		
		return true;
	}
	
	public function openPdfActionWithFilenamePrefix()
	{
		...
	}
}

Ich habe mich dazu an diesem Artikel orientiert.

Leider funktioniert dies nicht bzw. genauer: Nach dem Installieren des Plugins und dem Leeren des Proxy-Cache schreibt Shopware keinen entsprechenden Eintrag in die neue Proxy-Datei unter /var/cache/production__proxies/ShopwareControllersBackendOrderProxy.php

Mache ich etwas falsch? Kann man diese Methode evtl. gar nicht per Hook überschreiben? Wie komme ich ggf. an Fehlermeldungen? (Beim Installieren des Plugins werden keine angezeigt.)

Vielen Dank für Eure Hilfe,
Hendrik

Hi,

Hook in Controllern ist möglich - allerdings heißt die Klasse nicht “Order”, sondern “Shopware_Controllers_Backend_Order”. Entsprechend müsste der Hook mit “Shopware_Controllers_Backend_Order::openPdfAction::replace” gesetzt werden. Danach wie immer re-installieren, Cache leeren etc :).

Daniel

1 „Gefällt mir“

Vielen Dank, das hat funktioniert. :slight_smile:

Hey wie sieht denn der Rest des Plugins aus ?

Bzw was steht denn bei den …