国际化语言包审核方向和常见错误
跳到导航
跳到搜索
目录
JS文件语言包
语言包载入
当在config文件夹下创建js语言包配置文件之后,需要将该文件的值载入到所应用的js文件中,如下图所示:
用RC_Script::localize_script()加载jslang文件, A:代表就是要获取jslang文件中的某个值,此处为数组; B:区域就是当前模块所加载用到的js文件,属于临时加载注册; C:就是所注册名称; D:区域最关键此处不是js文件名称则是js文件所对应的注册名称;
注:综上所述,C与D需保持一致;
js文件中赋值
第1步中就算是成功将语言包配置项赋值到js文件中,那么在js文件中替换中文即可,过程中最需要注意的就是拼接时候,如下图所示:
变量拼接注意符号。
PHP文件语言包
domain参数
PHP文件中一般语言包使用直接可以__(‘值’,‘domain参数当前模块名称’),如下图所示:
第二个domain参数不可遗漏,值为当前模块名称。
字符串问题
__()不是字符串,无需引号。
正确方法:array(‘text’=> __(‘添加新文章’,‘article’)) 错误现象:array(‘text’=> ‘__(‘添加新文章’,‘article’)’)
sprintf和__()函数的包含位置用法
当语句中存在变量,应该使用sprintf方法,如下图所示:
正确方法:sprintf(__('语句以及和变量%s', 'doamin参数'), 变量) 错误现象:__(sprintf("语句以及和变量%s ", 变量), ' doamin参数')
Dwt文件语言包
domain参数
正确方法:{t domain=”模块名称”}测试{/t} 错误现象:①domain参数遗漏;②domain拼错③模块名称与当前模块不符合
{t}{/t}标签
正确方法:{t domain=”模块名称”}测试{/t} 错误现象:①{/t}尾标签遗漏②{t domain=”模块名称”} {/t} 标签内并无翻译的值
翻译语句中包含变量
正确方法:{t domain="article" 1={$one} 2={$two} }管理员 %1, 在 %2 IP。{/t} 错误现象:参数重复为{t domain="article" 1={$one} 1={$two} }