首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >translate.csv与core_translate的磁性差异

translate.csv与core_translate的磁性差异
EN

Stack Overflow用户
提问于 2012-12-10 08:27:12
回答 4查看 11.3K关注 0票数 2

translate.csv转换与通过表core_translate的数据库方法有什么不同

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-12-11 06:18:40

下面是来自app/code/core/Mage/Core/Model/Translate.php的init()方法的一部分

代码语言:javascript
复制
//Loading data from module translation files
        foreach ($this->getModulesConfig() as $moduleName=>$info) {
            $info = $info->asArray();
            $this->_loadModuleTranslation($moduleName, $info['files'], $forceReload);
        }
        $this->_loadThemeTranslation($forceReload);
        $this->_loadDbTranslation($forceReload); 

从它你可以看到Magento按照以下顺序加载翻译,即Magento中有三个选项可以将自定义翻译添加到文本字符串中:模块翻译,主题翻译和内联翻译。

模块翻译

模块翻译以csv文件的形式存储在app/locale/languagecode_COUNTRYCODE/文件夹中,命名为Namespace_Modulename.csv __()方法内的扩展中的所有字符串都可以这样翻译

主位翻译

字符串可以在您的主题内翻译,为此,您只需通过Magento管理区域设置语言环境,然后在app/design/frontend/<package>/<theme>/locale/languagecode_COUNTRYCODE中创建translate.csv,并将翻译后的字符串放入此CSV中

代码语言:javascript
复制
“My Cart”,”My Basket”

“My Account”,”Account”

内联翻译

要启用内联翻译,您需要登录管理面板并转到System -> Configuration -> Developer,然后找到内联翻译并将Enabled设置为前端是

通过此方法进行的所有转换都将存储在数据库中的core_translate表中。为了更好地理解这种方法是如何工作的,check this video out.

上面的文本是a part of my article on our blog

票数 9
EN

Stack Overflow用户

发布于 2012-12-10 14:31:19

core_translate表用于依赖于StoreView的短语

/app/design/frontend/YOUR PACKAGE/YOUR THEME/ LOCALE /YOUR LOCALE/translate.csv获取主题所在地区语言中的短语。如果您更改主题,则不会使用此短语(将使用来自新主题的translate.csv)。

如果短语在数据库和csv中可用,则将使用DB短语。

票数 5
EN

Stack Overflow用户

发布于 2013-05-28 01:03:02

在我看来,当您在多个服务器上以分布式方法运行magento时,core_translate非常有用,而且从文件系统读取数据并不理想。我使用带有内联翻译的core_translate来处理CMS块中的翻译内容。这样做的原因是,从db读取数据比解析.csv更快。(我不知道在启用缓存的情况下这是不是真的,但这似乎是最安全的方法)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13793422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档