Magento完成货币转换

时间:2011-06-08 12:55:21

标签: php magento e-commerce currency

我必须将美元作为基础货币以启用PayPal,但我将默认显示货币保持为INR。现在转换率为每美元45rs给我令人讨厌的十进制INR价格,我wana摆脱它,Magento必须使用一些功能将价格从基础货币转换为INR,同时显示INR价格到处都是,这是什么功能,我怎么能修改它总是给出舍入值??

我找到了:

$price = Mage::helper('directory')->currencyConvert($tax->getPrice($product, $product->getFinalPrice(), false), $fromCur, $toCur);

这是Magento本身用来转换不同货币价格的函数吗?如果它是在哪里定义的?

1 个答案:

答案 0 :(得分:5)

货币换算由Mage_Directory_Model_Currency按以下方法执行。

public function convert($price, $toCurrency=null)
{
    if (is_null($toCurrency)) {
        return $price;
    }
    elseif ($rate = $this->getRate($toCurrency)) {
        return $price*$rate;
    }

    throw new Exception(Mage::helper('directory')->__('Undefined rate from "%s-%s".', $this->getCode(), $toCurrency->getCode()));
}

您可以创建此文件的app/code/local版本,或编写自己的模块并重写核心。

请确保您在开发服务器和Paypal沙箱中测试非常小心,因为Paypal将拒绝任何有错误的交易!