【发布时间】:2014-06-27 15:36:28
【问题描述】:
我正在尝试建立一个允许大约 6 种不同货币的网站。我最初能够使用 Magento 内置的货币汇率很好地实现这一点,客户可以选择他们喜欢的货币,所有价格都以该货币显示。但是我最近发现,尽管价格以该货币计,Magento 仍会以基础货币(在这种情况下为英镑)处理交易。事实上,它并没有告诉客户这是直到订单结束时才会发生的事情,在我看来这是一件非常糟糕的事情,一些客户的银行可能还会因货币兑换而向他们收取更多费用。
由于 PayPal 已配置为允许以 6 种货币付款,因此我希望客户能够以这些货币付款。
我后来发现,由于 Magento 的构建方式,这不是一件容易的事,相反,您应该为每种货币设置一个新的“网站”,然后我可以为每个网站设置一个基础货币.这听起来很简单,但是关于这一切的教程似乎都强制每个网站都有自己独特的 url - 例如 us.website.com 或 website.com/us - 但在这种情况下不会这样做,我们需要一切都只使用一个基本网址website.com。
有人知道这是否可能吗?
我已经能够通过手动将以下内容添加到index.php 来更改存储,我认为一种可能的解决方案是记住会话中的用户选择,然后在此处加载正确的存储。这会有效还是有更好的方法来做到这一点,但我忽略了?
/* Override store code */
if (isset($_GET['code']))
{
$mageRunCode = $_GET['code'];
$mageRunType = 'website';
}
Mage::run($mageRunCode, $mageRunType);
该网站正在运行 Magento Community Edition v1.7.0.2。
【问题讨论】:
标签: php magento magento-1.7