5

私は 2 つの通貨を持つ Magento ストアを持っており、カート内のアイテムには動的な価格が設定されています。オブザーバーと setCustomPrice および setOriginalCustom price を使用して、quote_item の価格を正常に計算します

 $quote_item->setCustomPrice($price);
 $quote_item->setOriginalCustomPrice($price);

そして私のオブザーバー:

<sales_quote_add_item>

しかし、問題があります。ストアの通貨を変更すると、小計が更新されません。複数の通貨とカスタム見積もりアイテムの価格を処理する方法は?

4

3 に答える 3

1

オブザーバーを介して処理する

< sales_quote_item_set_product>

$baseCurrencyCode = Mage::app()->getStore()->getBaseCurrencyCode();
$currentCurrencyCode = Mage::app()->getStore()->getCurrentCurrencyCode();
if($currentCurrencyCode!=$baseCurrencyCode)
    $price= Mage::helper('directory')->currencyConvert($baseprice, $baseCurrencyCode, $currentCurrencyCode); 
else
    $price = $baseprice;

$item->setPrice($baseprice);
$item->setRowTotal($item->getQty() * $price);
于 2015-11-25T02:53:43.643 に答える