Magento Завершить конвертацию валют - PullRequest
2 голосов
/ 08 июня 2011

Мне нужно оставить USD в качестве базовой валюты, чтобы включить PayPal, но я оставил валюту по умолчанию в качестве INR.Теперь, конверсионный курс в 45 рублей за доллар США дает мне неприятные десятичные цены в индийских рупиях, я хочу избавиться от этого, Magento должен использовать какую-то функцию для преобразования цены из базовой валюты в индийские рупии, показывая везде цены в индийских рупиях, что это за функция и как я могу это сделать.изменить его так, чтобы он всегда давал значения округления ??

Я нашел:

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

Является ли эта функция самой Magento, используемой для преобразования цен в разных валютах, если она там, где она определена?

1 Ответ

5 голосов
/ 08 июня 2011

Конвертация валюты выполняется с помощью 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 будет отклонять любые транзакции, в которых есть ошибки!

...