【发布时间】:2014-12-07 23:42:10
【问题描述】:
我有 Magento 1.8.1.0。最近我安装了俄语包,结果不够合适,导致前端的一些短语仍然是英文
我知道使用 cvs 文件翻译 Magento 有很方便的方法。
问题是我在哪里可以找到合适的 cvs 文件?设置的主题怎么翻译有些关系?我知道我在问新手问题,我已经阅读了几篇文章,但我还没有决定如何翻译 Magento。
非常感谢。
【问题讨论】:
标签: magento translation magento-1.8
我有 Magento 1.8.1.0。最近我安装了俄语包,结果不够合适,导致前端的一些短语仍然是英文
我知道使用 cvs 文件翻译 Magento 有很方便的方法。
问题是我在哪里可以找到合适的 cvs 文件?设置的主题怎么翻译有些关系?我知道我在问新手问题,我已经阅读了几篇文章,但我还没有决定如何翻译 Magento。
非常感谢。
【问题讨论】:
标签: magento translation magento-1.8
希望你一切都好,
我已经解决了您的问题,如果用户选择了俄语,您希望将您的网站前端翻译成俄语。
为此,您需要制定可在您的主题包中使用的 translate.csv 文件。
示例: app/design/frontend/default/SecuareWeb/locale/de_DE
在语言环境文件夹中,您将找到俄语文件夹打开该文件夹,您将找到需要在其中添加所需翻译文本的文件。
下面给出了如何在 translate.csv 文件中添加翻译文本。
示例: "这是俄语翻译演示","Это демо-трансляции на русском языке"
我想补充的一件事是确保您的前端 .phtml 文件必须包含 $this->__("Example"); 中的文本。如果您已经添加了所有这样的文本,那么只有这样它才会允许您进行翻译,否则它将不会翻译文本。
希望这对你有用!!!
等待您宝贵的 cmets 关于您的问题!!!
【讨论】:
在 Magento 中有多种实现翻译的方法,因此您可以找到包含静态 csv 文件和数据库表的多个目录。 所有模式都具有相同的结构:键/值。例如:“要翻译的字符串”、“翻译的字符串”。
内联翻译(数据库表:core_translate):
遵循 Magento 的最佳实践,您应该在极少数情况下使用内联翻译,即数据库保存的翻译。它更难维护并且可能是错误的。它具有第一优先权,因此您通过内联翻译进行的任何翻译都将覆盖其他“模式”。
主题级别翻译(app/design/frontend/your_package/your_theme/ru_RU/translate.csv 中的文件):
您可以将任何要翻译的字符串放在 translate.csv 中。它具有第二优先级。
语言环境翻译(app/locale/ru_RU/Module_Name.csv 中的文件):
建议的翻译方法,因为它将使每个模块的翻译分开并且更易于维护。例如:Mage_Catalog.csv 等。
Magento 中的每个模块都可以指定其包含翻译的 csv 文件,有时同一字符串有不同的模块尝试翻译,因此如果您的翻译不起作用,请通过快速编辑器搜索在多个文件之间进行检查。会被以上两种模式覆盖。
注意:
Magento 将加载所有 csv 文件并构建一棵巨大的树并缓存它。所以在挠头之前,因为字符串没有在前端按您希望的那样翻译:
1. 清理缓存。
2. 检查任何相同的键字符串,它出现在你翻译的字符串之后。例如:在同一个 csv 中,如果键字符串相同,第 100 行将覆盖第 1 行。
3. 在具有更高优先级的模式中检查任何相同的密钥字符串。例如:内联翻译将覆盖任何基于 csv 的翻译字符串。
【讨论】:
您可能更容易转到管理后端系统 -> 配置 -> 开发人员并将“翻译内联”“为前端启用”切换为“是”。
然后,刷新前端,您可以直接在网络浏览器上更改翻译。 翻译保存在数据库表 core_translate 中,仅用于您想在测试环境中进行翻译并稍后将翻译复制到生产环境中的情况。
请注意,如果没有客户端限制(系统 -> 配置 -> 开发人员),每个人都会看到翻译选项。
顺便说一句。您可能需要清除缓存并刷新网页才能看到您的更改。
【讨论】: