教程栏目

joomla中文网出品的官方教程

在这一节中我们来介绍一下joomla的语言文件。如何实现让我们的模块能够轻松支持多语言。

 关于joomla多语言的基础,在这里就不多说。如果不清楚,请查看本站多语言相关的文章。首先我们需要新建两个语言文件。然后将语言文件包含到xml文件中,好让安装程序能够将语言文件放到正确的地方。其他的事情就交给joomla来做了。

重点看一下XML文件是如何包含语言文件的


	<files>
		<filename module="mod_articletree">mod_articletree.php</filename>
		<folder>tmpl</folder>
		<folder>language</folder>
		<filename>helper.php</filename>
		<filename>index.html</filename>		
		<filename>mod_articletree.xml</filename>
	</files>
	<languages folder="language">
		<language tag="zh-CN">zh-CN/zh-CN.mod_articletree.sys.ini</language>
		<language tag="zh-CN">zh-CN/zh-CN.mod_articletree.ini</language>
		<language tag="en-GB">en-GB/en-GB.mod_articletree.sys.ini</language>
		<language tag="en-GB">en-GB/en-GB.mod_articletree.ini</language>
	</languages>

 上面的代码是一个比较通用的XML文件对语言文件的包含。注意,这里的language文件夹应该和组件的更目录在一个目录下。下面是一个文件结构的截图:

当然上面的<folder>language</folder>是可以没有的。如果有,那么系统会将语言文件拷贝一份到模块的安装目录。并且同时将语言文件分别放到JSIte/languages中对应的目录(en-GB和zh-CN)。

系统检索语言文件的顺序


系 统首先会去查找JSITE/language中对应于的语言文件。如果找到了就加载。如果没有找到,就查找模块的安装目录下的language文件夹中的 语言文件。如果当前系统的语言为中文(zh-CN).那么系统会首先在/languages/zh-CN/中寻找zh- CN.mod_articletree.ini ,zh-CN.mod_articletree.sys.ini。如果没有找到,那么就去 /modules/mod_articletree/language/zh-CN下寻找。如果依旧没有找到,就会寻找en-GB.mod_****文 件。如果还是没有,那么就直接显示原始字符。

语言文件的范围


joomla有两种语言文件 ,一种是.ini 另一种是.sys.ini.他们的管辖范围是不一样的。

.sys.ini 负责模块的类型,组件的类型,组件安装时显示的提示信息翻译。当然这里可能列举不全。

.ini 负责除此之外其他的信息的翻译

注意


模块的描述信息在两个地方会使用到。一个是在模块安装的时候,这个时候的描述信息是从.sys.ini中翻译的。另外一个是在模块管理中,查看模块详情或者新建模块的页面中的模块的描述信息。这个是在.ini中翻译的。

 

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前