discuz插件机制--语言包
<h3>插件语言包</h3><span style="color:#e74c3c"><strong>创建语言包</strong></span>
<p>给插件创建语言包首先需要创建一个 data/plugindata/identifier.lang.php 文件,文件内容中包含 3 个数组,如下:</p>
<pre>
<?php
$scriptlang['identifier'] = array(
'english' => 'chinese',
...
);
$templatelang['identifier'] = array(
'english' => 'chinese',
...
);
$installlang['identifier'] = array(
'english' => 'chinese',
...
);
?>
</pre>
<p>$scriptlang 为程序脚本文件的语言包,$templatelang 为模版文件的语言包,$installlang 为安装、升级、卸载脚本用的语言包。 如果插件不涉及某些类型的语言文字,变量可忽略。</p>
<p>然后在插件基本设置中开启语言包选项后即可。</p>
<span style="color:#e74c3c"><strong>调用语言包</strong></span>
<p>模版中调用模板文件语言包,通过 {lang <em>identifier</em>:english} 方式调用。</p>
<p>程序脚本中调用脚本文件语言包,通过 lang('plugin/<em>identifier'</em>, 'english') 方式调用。</p>
<p>安装脚本中调用安装脚本文件语言包,通过 $installlang 变量直接获取。如 $installlang['english']。</p>
<span style="color:#e74c3c"><strong>语言包导出</strong></span>
<p>创建好的语言包在插件导出后会自动导出到 XML 文件中,供插件作者转码后发放多编码版本的插件。如上例中导出的 XML 中会包含以下内容:</p>
<pre>
<item id="language">
<item id="scriptlang">
<item id="english"><!]></item>
</item>
<item id="templatelang">
<item id="english"><!]></item>
</item>
<item id="installlang">
<item id="english"><!]></item>
</item>
</item>
</pre>
<p>data/plugindata/<em>identifier</em>.lang.php 文件不必在插件发布的时候导出,此文件仅供插件设计者模式时使用。</p>
<h3>插件模板</h3>
<p>插件的模板统一放置到 source/plugin/<em>identifier</em>/template 目录下,程序脚本通过以下语句调用插件模板文件,如下例,调用 source/plugin/<em>identifier</em>/template/test.htm</p>
<pre>
include template('identifier:test');
</pre>
<p>模版中调用插件模版通过以下方法:</p>
<pre>
{template identifier:test}
</pre>
<p>模板的编写详见<a href="https://addon.dismall.com/library/plug/plugin/plugin_language.htm-ac=document&page=template_coderule.html" title="模板创建、解析原理详解">模板创建、解析原理详解</a><br />
<br />
原文地址:https://addon.dismall.com/library/plug/plugin/plugin_language.html#language<br />
其它用法:https://open.dismall.com/?ac=document&page=plugin_language</p>
页:
[1]