1

我正在尝试使用运输和处理(含税)更改我的 Magento 网站中所有出现的运输和处理。

我仔细搜索了一下,发现我需要创建一个新的 translate.csv 文件并将其放入文件夹中:

/app/design/frontend/package/theme/locale/en_GB/

因此,我创建了一个 translate.csv 文件,其中包含以下内容:

"Shipping & Handling";"Shipping & Handling (Incl.Tax)"
"Shipping & Handling";"Shipping & Handling (Incl.Tax)"

并将其上传到 /app/design/frontend/package/theme/locale/en_GB/

然后我清除了magento缓存并刷新了所有内容,但翻译不起作用,有人知道问题是什么吗?

谢谢

4

2 回答 2

1

您是否在管理区域的区域设置选项设置中指定了英语(英国)?

如果没有,您需要进入系统 -> 配置,选择所需的商店视图并在常规选项卡下找到区域设置选项部分。接下来,从 Locale 下拉菜单中选择正确的(第一个是语言,第二个是国家,例如,对于加拿大英语,它将是英语(加拿大))。

您还需要使用逗号 (,) 作为分隔符 not ;

"Shipping & Handling","Your text goes here"
于 2013-05-08T18:03:11.680 回答
0

我在 magento 1.7 上遇到了同样的问题;magento 核心中似乎存在一个错误,因此 magento 更喜欢 /app/locale 中的翻译而不是本地主题文件夹中的翻译。我在另一个线程中找到了这个解决方案(不记得在哪里):

修复或覆盖app/code/core/Mage/Core/Model/Translate.php,方法_getTranslatedString

更改自:

if (array_key_exists($code, $this->getData())) {
    $translated = $this->_data[$code];
}
elseif (array_key_exists($text, $this->getData())) {
    $translated = $this->_data[$text];
}
else {
    $translated = $text;
}

至:

if (array_key_exists($text, $this->getData())) {
   $translated = $this->_data[$text];
}
elseif (array_key_exists($code, $this->getData())) {
    $translated = $this->_data[$code];
}
else {
    $translated = $text;
}

为我修好了。

于 2013-05-09T15:37:56.530 回答