2016-05-06 11 views
0

私はcheckout_controller_onepage_save_shipping_methodにオブザーバーを追加しました。値は変更するロジックをすでに書いていますが、クォータを保存することはできません。編集された値ではありません。私はヘッダーが送られた主な問題を推測しますが、どのように私はそれを行うことができますか?Observer change Quote Magento

public function checkTotals(Varien_Event_Observer $observer) 
{ 
    $quote  = Mage::getSingleton('checkout/type_onepage')->getQuote(); 

    $grandTotal = 1 

    $quote->setData('grand_total', $grandTotal); 
    $quote->setData('base_grand_total', $grandTotal); 
    $quote->save(); 
} 

答えて

0

問題は解決されませんでした。私はPayPal APIに問題があり、拡張機能の1つがPayPalのために価格に2%を追加していたとき、それはpaypalへのAPI呼び出しを壊しました。問題は、クォータ内の合計を再計算して、カートからの値を再度取るというセーブ方法であり、価格やその他のものを変更するだけでは問題ありません。価格に数パーセントを追加するようなものを作成したい場合は、クォータや価格ルールでアイテムを作成するか、カートに隠れたアイテムだけを作成して変更する必要があります。

関連する問題