Joomla系统是支持多语言的,如果你愿意也可以为你的模板提供多语言的支持。本节我们就来给模板增加多语言支持
了解如何给模板增加多语言支持
2.1 什么是模板的多语言
如果大家经常使用国外的扩展,就会发现这些扩展默认的后台都是提供英文界面的,但是一旦安装了中文语言包,就变成中文了。这是因为该扩展支持多语言。那么接下里我们要做的就是将模板实现多语言的支持。
2.2 多语言效果
系统会自动依据当前用户的语言来加载对应的语言包,以便输出对应的语言词条
当后台语言选择为中文时:
当后台语言选择为英文时:
要实现多语言的支持,我们需要对模板做如下的调整
3.1 调整TemplateDetail.xml中的参数定义。将原先直接写的文字使用一个代码来取代。如下:
<config> <fields name="params"> <fieldset name="advanced"> <field name="logo" type="media" label="TPL_PLANC_LOGO_LABEL" description="TPL_PLANC_LOGO_DESC" default="templates/planc/image/logo.png" /> <field name="style" type="filelist" label="TPL_PLANC_STYLE_LABEL" description="TPL_PLANC_STYLE_DESC" directory="templates/planc/styles" filter=".php" required="true" default="default.php" /> </fieldset> </fields> </config>
在上面我们将原先的label="网站Logo"该为使用 label="TPL_PLANC_LOGO_LABEL"来代替了。我们将TPL_PLANC_LOGO_LABEL这类的词称作键(key). 这个键的定义一般遵循如下的规则。TPL_PLANC_LOGO_LABEL 为 TPL(固定的)_PLANC(模板的名称)_LOGO(字段的名称)_LABEL 这种格式。更多关于语言定义的规范问题请参考:Joomla语言词条定义规范
2,增加语言文件
文件夹的结构如下:
3,在对应的语言文件中添加翻译。翻译的格式为 键 = “值”。
zh-CN.tpl_planc.ini文件内容如下:
; PLANC模板说明 ; 南宁市程序人软件科技有限责任公司保留所有权利. ; License GNU General Public License version 2 or later; see LICENSE.txt, see LICENSE.php ; 注意 : 所有的语言文件必须保存为 UTF-8 格式 TPL_PLANC_LOGO_LABEL="网站LOGO" TPL_PLANC_LOGO_DESC="选择网站的LOGO.建议大小为100*60px" TPL_PLANC_STYLE_LABEL="选择布局风格" TPL_PLANC_STYLE_DESC="选择该样式下需要使用的布局风格"
en-GB.tpl_planc.ini文件内容如下:
; PLANC模板说明 ; 南宁市程序人软件科技有限责任公司保留所有权利. ; License GNU General Public License version 2 or later; see LICENSE.txt, see LICENSE.php ; 注意 : 所有的语言文件必须保存为 UTF-8 格式 TPL_PLANC_LOGO_LABEL="Website Logo" TPL_PLANC_LOGO_DESC="Please choose a logo.(100*60px)" TPL_PLANC_STYLE_LABEL="Style" TPL_PLANC_STYLE_DESC="select a layout for this style"
重点注意:ini文件必须被保存为UFT-8格式。否则可能会出现乱码
在创建语言文件的时候一般都会有两个,一个后缀是.ini另外一个是.sys.ini。通常我们的语言词条翻译都是.ini中完成的。.sys.ini中主要存放系统需要使用的词条。比如在安装模板时需要显示的多语言词条就需要在.sys.ini中写了。
4.1 代码
在本次版本中,我们为模板增加了多语言的支持,通过将XML中硬编码改为键,然后在语言文件中进行翻译,以实现多语言效果。
4.2 v0.0.19版本
关于v0.0.19版本的代码,可以在此下载 tpl_plancv0.0.18_2019-01-19_for_j3x.zip