magento 翻译使用实例
在自定义的模块中若想要使用翻译,需在config.xml中加入如下配置
<config>
<adminhtml> //后台
<translate>
<modules>
<Jago_translate>
<files>
<default>test.csv</default>
</files>
</Jago_translate>
</modules>
</translate>
</adminhtml>
<frontend> //前台
<translate>
<modules>
<Jago_translate>
<files>
<default>test.csv</default>
</files>
</Jago_translate>
</modules>
</translate>
</frontend>
</config>
以登陆界面为例
在app/code/core/Mage/Customer/etc/config.xml中我们可以看到这样的声明
<translate>
<modules>
<Mage_Customer>
<files>
<default>Mage_Customer.csv</default>
</files>
</Mage_Customer>
</modules>
</translate>
那么只需在app/locale/zh_CN中建立Mage_Customer.csv文件,然后往里输入
"Log In","登陆"
"Login or Create an Account","登陆或创建新账号"
接着就是进入后台,在System->Configuration->General->Locale Options
将Locale选成Chinses就可以了,打开页面可以看到如下效果

接下去讲讲为什么建立的文件夹名字叫zh_CN
这个的原因可以看app\code\core\Mage\Core\Model\Locale\Config.php,就不多说了。
最后讲一讲translate.csv文件
进入app/design/frontend/default/default/locale
然后建立一个zh_CN文件夹,在里面建立translate.csv,往里面写入
"Login or Create an Account","覆盖"
这时候重新刷新页面,就会发现界面变了

其实从这个文件放的位置就可以理解,这个csv文件是专门给所在的模板用的,当使用这个模板时,translate.csv里的翻译项会覆盖掉语言包里的同名项,也就是在我们第一步配置了翻译的情况下,这里的优先级会比较高。
而在编写程序时,若希望自己的语句会被翻译,在模板界面需这样编写
<?php echo $this->__('Login or Create an Account') ?>
magento 翻译使用实例的更多相关文章
- 爬虫新手学习2-爬虫进阶(urllib和urllib2 的区别、url转码、爬虫GET提交实例、批量爬取贴吧数据、fidder软件安装、有道翻译POST实例、豆瓣ajax数据获取)
1.urllib和urllib2区别实例 urllib和urllib2都是接受URL请求相关模块,但是提供了不同的功能,两个最显著的不同如下: urllib可以接受URL,不能创建设置headers的 ...
- 老李推荐:第6章4节《MonkeyRunner源码剖析》Monkey原理分析-事件源-事件源概览-翻译命令字串
老李推荐:第6章4节<MonkeyRunner源码剖析>Monkey原理分析-事件源-事件源概览-翻译命令字串 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自 ...
- firefox浏览器 插件--【维基百科+谷歌翻译】高级应用之 带图翻译
[维基词典+谷歌翻译]插件地址: https://addons.mozilla.org/zh-CN/firefox/addon/google-dictionary-and-google-t/?src= ...
- 第6章4节《MonkeyRunner源代码剖析》Monkey原理分析-事件源-事件源概览-翻译命令字串
在第2节中我们看到了MonkeySourceNetwork是怎样从Socket中获取MonkeyRunner发送过来的命令字串的,可是最后怎样将它翻译成事件的代码我们还没有进行分析,由于在那之前我们还 ...
- vbs keys
其使用格式为: object.SendKeys string "object":表示WshShell对象 "string":表示要发送的按键指令字符串,需要放在 ...
- python自动化测试
python自动化测试 欢迎光临 python自动化测试 小站! 小站基于IT行业,重点关注python,软件自动化测试,测试等. 联系方式 飞信 372818219 相关的群:python开发自动化 ...
- ES6核心内容精讲--快速实践ES6(二)
Iterator和for...of 是什么: Iterator(遍历器)是专门用来控制如何遍历的对象,具有特殊的接口. 怎么用: Iterator(遍历器)对象带有next方法,每一次调用next方法 ...
- “reliable message”事件引发的思考
今天无意间看到了“reliable message"事件,平时还真没深入研究过这个事件,于是,就收集资料并稍微研究了一下,以下是官方就该事件给出的说明: When you send a me ...
- Golang设计模式—简单工厂模式(Simple Factory Pattern)
Golang设计模式--简单工厂模式 背景 假设我们在做一款小型翻译软件,软件可以将德语.英语.日语都翻译成目标中文,并显示在前端. 思路 我们会有三个具体的语言翻译结构体,或许以后还有更多,但现在分 ...
随机推荐
- Delphi:ClientDataset+TDataSetProvider的数据保存问题
看到一篇介绍ClientDataSet和TDataSetProvider,非常精彩,特此保存. ==================================================== ...
- Bootstrap官网文档查询
Ctrl+F 在出现的小搜索框里面输入要查找的东西.回车即可!
- MySQL集群方案收集
MySQL集群是一个需要时间才能磨得出的话题,不可能一下子就全部能掌握.由于整个方案结合LVS+Keepalived这种,更加的复杂. 下面是一些主流方案的收集: MySQL双主 + Keepaliv ...
- JSP的生命周期
以下内容引用自http://wiki.jikexueyuan.com/project/jsp/life-cycle.html: JSP生命周期可以被定义为从创建到销毁的整个过程,这类似于一个Servl ...
- ArcEngine 打开AutoCAD文件的几种方法
方法一. IWorkspaceFactory pWorkspaceFactory; IFeatureWorkspace pFeatureWorkspace; IFeatureLayer pFeatur ...
- Android GMS无法通过网络定位
前言 欢迎大家我分享和推荐好用的代码段~~ 声明 欢迎转载.但请保留文章原始出处: CSDN:http://www.csdn.net ...
- 中国第二代身份证验证js代码
以下这部分代码截取自盛大的某个网页.详细我就不给url了.以下是相应的js代码: iW = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); iSum ...
- CGlib小记
CGlib是一个强大的代码生成包.常被用于各种AOP框架,提供"拦截"功能. JDK本身就为控制要訪问的对象提供了一 种途径,动态代理Proxy. 可是被代理的累必须实现一个或多个 ...
- @Override用在哪儿
帮朋友改一段代码,看到好多红叉都是指向@Override. 是这样,他代码里写了一个接口.方法都用抽象函数声明在接口类里.然后在继承自这个接口的实现类里写详细方法的空壳 ...
- Codeforces(429D - Tricky Function)近期点对问题
D. Tricky Function time limit per test 2 seconds memory limit per test 256 megabytes input standard ...