视频教程
图文教程
在开发多语言网站时会用到语言包,利用语言包可以实现各种语言网站。
语言包文件存放目录:
api/language/
此目录为语言文件目录,系统默认为zh-cn,表示中文,也是系统的主语言。
一、自定义网站语言
1、在语言目录下创建新语言,例如en
api/language/en/
然后把默认的zh-cn目录的语言文件复制进去。
2、在后台网站配置就可以看到en这个选项了
3、将js等文件全部翻译成英文
4、翻译替换php里面的中文,lang.php文件,格式如下:
<?php /** * 语言包配置文件 * 采用语言替换格式,自定义语言格式为: * '默认中文语言' => '新的语言', */ return [ '保存' => 'Save', '修改' => 'Edit', ];
翻译过程比较繁琐,因为网站的所有文字都要写上去
二、变更语言内容
当cms里面的文字不符合你的要求时你可以来修改他,修改lang.php文件,例如:
<?php /** * 语言包配置文件 * 采用语言替换格式,自定义语言格式为: * '默认中文语言' => '新的语言', */ return [ // 把保持二字改成储存 '保存' => '储存', // 下面这句改验证码 '您的本次验证码是: %s' => '你好,本次短信验证码是: %s,请不要告诉别人', ];
三、快速找到哪些文本需要翻译
1、开启开发者模式
index.php文件里面开启
2、然后访问某一个页面,随便哪个页面都行
3、这时候系统会生成一个本页面需要翻译的文件内容,比如你的语言名称是en,那么生成的文件路径是
cache/lang_en.php,内容如下:
这就代表当前页面有这些文字都要翻译
4、把这些文字复制到(二)的数组里面进行翻译
5、然后将(3)文件的内容删除,依次重复(2、3、4)的步骤,直到所有语言被翻译完毕为止
四、前端模板文字调用
如果希望前端模板中的文字能够受语言包控制,
则需要用到dr_lang函数,
写法:
{dr_lang('文字')}
比如:
{dr_lang('产品')}
页面就会自动显示语言包中翻译好的语言
调用示例:
当前模块名称:
{dr_lang(MODULE_NAME)}
title字段调用
{dr_lang($title)}