在写这篇文章之前,我做了大量的研究和测试,并在SO和其他博客上阅读了太多帖子,但没有解决我的问题。 我正在使用magento 1.9.2.1开发一个网站。它将有两种语言英语和阿拉伯语和七种货币USD,SAR,QAR等。让我们说域名是altaf.com;)。
要求:
怎么做?
一种方法如下:
以上问题:
我们有成千上万的产品和大约20个类别和其他大量的内容,这将难以管理。
输入数据时,我们很可能会错过为每个内容选择约7个商店视图。此外,输入产品数据将更加困难。
还可能出现更多问题......
我是怎么做的?
我为每个创建了商店视图并设置了相应的网址。目前我只为en-sa.altaf.com创建了4个商店视图,ar-sa.altaf.com,en-us.altaf.com,ar-us.altaf.com
为每个商店网址创建了子文件夹,例如en-sa,en-us,ar-sa和ar-us,并在其中放置了index.php,并相应地将路径更改为Mage.php。对每个域的nginx配置文件进行适当的更改,并设置正确的根路径。测试它们并确认每个子文件夹index.php都已执行。
现在我正在尝试为每个具有 zh 的网址加载英文内容,并为每个具有 ar 的网址添加阿拉伯语内容。这样,管理所有内容将变得容易。我在所有MAGE_RUN_CODE
文件中使用index.php
作为 en ,这些文件放在en-xx子文件夹中,类似地 ar 用于ar-xx子文件夹。我还试图为en-us.altaf.com和ar-us.altaf.com设置如下的商店和货币,这将使用usd作为货币。
Mage::app()->setCurrentStore('en'); //for en
Mage::app()->getStore()->setCurrentCurrency('usd'); //Set currency for store
和
Mage::app()->setCurrentStore('ar'); //for ar
Mage::app()->getStore()->setCurrentCurrency('usd');
但它不起作用,这是我的大问题。
任何人都可以帮助我解决这个问题,或者为我提供其他更好解决方案的详细信息吗?我将提供50分的赏金,以获得正确的答案,解决我的问题:)。
答案 0 :(得分:1)
如果你想这样做,你应该添加代码'在php函数的名称下以编程方式设置货币:
Mage::app()->getStore()->setCurrentCurrencyCode('USD');
取代
Mage::app()->getStore()->setCurrentCurrency('USD');
但我不认为这是最好的方式。 我会创建2个网站,阿拉伯语和英语,然后为每种货币添加商店视图。每个网站都应使用相同的根类别。然后在Magento后端为每个商店视图设置网址,语言和货币。
添加新产品时,您只需要以2种语言插入内容,然后选中目录中的2个复选框 - >管理产品 - >产品信息 - >网站。
货币将自动应用于每个商店视图。