插件模板和语言包的设计
插件语言包
创建语言包
给插件创建语言包首先需要创建一个data/plugi ndata/ident ifier
.lan g.p h p文件文件内容中包含3个数组如下
<?php
$scrip tlang [' ident ifier' ] = array (
'engli sh' => 'chine se' ,
. . .
) ;
$templ atela ng[' ident ifier' ] = array (
'engli sh' => 'chine se' ,
. . .
) ;
$insta lllan g[' ident ifier' ] = array (
'engli sh' => 'chine se' ,
. . .
) ;
?>
$scrip tlang为程序脚本文件的语言包 $templ atelang为模版文件的语言包$installlang为安装、升级、卸载脚本用的语言包。如果插件不涉及某些类型的语言文字变量可忽略。
然后在插件基本设置中开启语言包选项后即可。
调用语言包
模版中调用模板文件语言包通过{lang ident ifier:engli sh}方式调用。
程序脚本中调用脚本文件语言包通过lang('plugi n/identifier', 'engli sh' )方式调用。
安装脚本中调用安装脚本文件语言包通过$insta lllang变量直接获取。如$installlang['engli sh' ] 。
语言包导出
创建好的语言包在插件导出后会自动导出到XML文件中供插件作者转码后发放多编码版本的插件。如上例中导出的XML中会包含以下内容
<item id="langu age">
<item id="scrip tlang">
<item id="engli sh"><! [CDATA [chine se]]></item>
</item>
<item id="templatelang">
<item id="engli sh"><! [CDATA [chine se]]></item>
</item>
<item id="installlang">
<item id="engli sh"><! [CDATA [chine se]]></item>
</item>
</item>data/plugi ndata/ident ifier.lang.php文件不必在插件发布的时候导出此文件仅供插件设计者模式时使用。
插件模板
插件的模板统一放置到 sourc e/plugi n/ident ifier/templ ate 目录下程序脚本通过以下语句调用插件模板文件如下例调用sourc e/plugi n/identifier/templ ate/test.htminclu de templ ate(' ident ifier :test' ) ;
模版中调用插件模版通过以下方法
{templ ate ident ifier :test}
模板的编写详见模板创建、解析原理详解