PreDispatch Checkout Price ändern

Hi liebe Community,

Ich möchte versuchen über Enlight_Controller_Action_PreDispatch_Frontend_Checkout den Preis des Produktes zu ändern, welches in in den Warenkopf lege. Dafür benutze ich in meinem Plugin in der Datei /shopware_root_verzeichnis/custom/plugins/MyPlugin/Subscriber/RouteSubscriber.php die folgende Herangehensweise:

 'onCheckout'
        ];
    }

    public function __construct($pluginName, $pluginDirectory)
    {
        $this->pluginDirectory = $pluginDirectory;
    }

    public function onCheckout(\Enlight_Controller_ActionEventArgs $args)
    {
        //Shopware()->Container()->get('pluginlogger')->error($args);
        $article = $args->getReturn();
        foreach($article['content'] as $aK => $aV)
        {
            $newPrice = $aV['priceNumeric']*2;
            $article['content'][$aK]['price'] = sArticles::sCalculatingPrice($newPrice, $aV["tax"], $aV["taxID"], $aV);
            $article['content'][$aK]["priceNumeric"] = floatval(str_replace(",", ".", $article['content'][$aK]['price']));
        }
        $args->setReturn($article);
    }
}

Ich probiere dabei allerdings nur aus und weiß nicht so richtig, was ich tue. Ich habe erwartet, dass der Preis nun doppelt so hoch ist. Orientiert habe ich mich an diesem alten Post:

https://forum.shopware.com/discussion/11119/artikelpreis-in-warenkorb-aendern

Leider finde ich zu diesem Thema absolut nichts, dabei scheint mir der Task gar nicht so komplizirt vom Prinzip. Ich würde mich deshalb sehr darüber freuen, wenn mir jemand eine kleine Hilfestellung anbieten würde. Bestimmt ist das auch für andere sehr interessant :slight_smile:

Weiterhin wäre es wirklich gut zu wissen, wie man in diesem Kontext debuggen kann? Bspw. würde ich mir die Variable $args sehr gern mal als var_dump ansehen, ich weiß aber nicht, wie ich das bewerkstelligen kann.

Vielen Dank und liebe Grüße

Hallo! Ich würde dir für Preismanipulationen folgendes Event empfehlen:

 Shopware\_Modules\_Basket\_getPriceForUpdateArticle\_FilterPrice

Hallo neonlines,

leider führt das hier bei mir zu einem Error 500:

public static function getSubscribedEvents()
{
    return [
        'Shopware_Modules_Basket_getPriceForUpdateArticle_FilterPrice' => 'onAddToCart'
    ];
}

Das Event Shopware_Modules_Basket_getPriceForUpdateArticle_FilterPrice scheint es nicht zu geben. Hast du evtl einen Schreibfehler drin?