Discuz开发 Discuz插件程序和模板语言包制作方法

[复制链接]
ARCHY明星会员实名认证 发表于 2012-9-10 13:12:15 [Discuz开发] 显示全部楼层 |阅读模式 上一主题 下一主题
discuz使用视频教程

马上注册,一起探讨正确快速的建站方法

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
插件语言包的创建方法、调用使用方法及导出的方法。

一、创建语言包
给插件创建语言包首先需要创建一个 data/plugindata/identifier.lang.php 文件,文件内容中包含 3 个数组,如下:
  1. <?php

  2. $scriptlang['identifier'] = array(
  3.   'english' => 'chinese',
  4.   ...
  5. );

  6. $templatelang['identifier'] = array(
  7.   'english' => 'chinese',
  8.   ...
  9. );

  10. $installlang['identifier'] = array(
  11.   'english' => 'chinese',
  12.   ...
  13. );

  14. ?>
复制代码
$scriptlang 为程序脚本文件的语言包,$templatelang 为模版文件的语言包,$installlang 为安装、升级、卸载脚本用的语言包。 如果插件不涉及某些类型的语言文字,变量可忽略,然后在插件基本设置中开启语言包选项后即可。

二、调用语言包
模版中调用模板文件语言包,通过 {lang identifier:english} 方式调用。

程序脚本中调用脚本文件语言包,通过 lang('plugin/identifier', 'english') 方式调用。

安装脚本中调用安装脚本文件语言包,通过 $installlang 变量直接获取。如 $installlang['english']。


三、语言包导出

创建好的语言包在插件导出后会自动导出到 XML 文件中,供插件作者转码后发放多编码版本的插件。如上例中导出的 XML 中会包含以下内容:
  1. <item id="language">
  2.         <item id="scriptlang">
  3.                 <item id="english"><![CDATA[chinese]]></item>
  4.         </item>
  5.         <item id="templatelang">
  6.                 <item id="english"><![CDATA[chinese]]></item>
  7.         </item>
  8.         <item id="installlang">
  9.                 <item id="english"><![CDATA[chinese]]></item>
  10.         </item>
  11. </item>
复制代码
data/plugindata/identifier.lang.php 文件不必在插件发布的时候导出,此文件仅供插件设计者模式时使用。

四、插件模板
插件的模板统一放置到 source/plugin/identifier/template 目录下,程序脚本通过以下语句调用插件模板文件,如下例,调用 source/plugin/identifier/template/test.htm
  1. include template('identifier:test');
复制代码
模版中调用插件模版通过以下方法:
  1. {template identifier:test}
复制代码
模板的编写,详见Discuz模板创建方法解析原理详解




上一篇:Discuz 插件的安装、卸载和升级XML制作方法
下一篇:编写Discuz插件需要仔细注意的一些原则

大神点评6

彩印设计 发表于 2013-1-7 10:17:01 [Discuz开发] 显示全部楼层
看看
hileeda 发表于 2013-3-6 15:49:15 [Discuz开发] 显示全部楼层
貌似看不懂,有没有更详细的教程呢。。。。
kclaca 发表于 2013-11-10 08:24:06 [Discuz开发] 显示全部楼层
这个方法在3.1已经没法用了,现在根本都不知道语言包的具体位置在哪,老大,帮忙看看好吗,谢了。
v4521 发表于 2014-4-6 16:27:43 [Discuz开发] 显示全部楼层
值得看看 感谢分享。支持zb7论坛
haonvhi 发表于 2018-2-23 22:43:15 [Discuz开发] 显示全部楼层
哇,惊喜,找到了,下了试一下i是否可用,先谢了
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

快速回复 返回顶部 返回列表