Discuz!X插件模板与语言包设计

Discuz!X 的插件开发,语言包和模板部分其实挺关键的。语言包写得好,插件多语言支持轻松搞定,界面也更亲民。像$scriptlang$templatelang这些配置,建议你在data/plugindata/里整一个identifier.lang.php,三个数组分别对照脚本、模板、安装脚本的语言项。不用强求全写,按需来就行。调用也不复杂,模板里用{lang identifier:xxx},脚本里用lang('plugin/identifier', 'xxx'),一看就懂。

模板这块就更直接了,文件统一丢在source/plugin/identifier/template里,管理方便。你可以在程序里用includetemplate('identifier:test')调模板,也能在模板文件里嵌套调用:{template identifier:test}。写插件时用这个组合起来,逻辑清晰、复用高,页面展示也更统一。

语言包发布的时候,它会自动被打包成XML文件,所以你开发时那个identifier.lang.php文件不用非得发布出去。语言支持主要看导出的 XML 结构。插件准备上线时,记得测一测各语言是否都能正确显示,省得发布后出 Bug。

如果你正折腾 Discuz!X 插件,建议语言包和模板都按这个套路走一遍,调试顺畅、集成方便,还能让插件更通用。顺带一提,下面这些语言包也挺实用的,支持多平台:

如果你插件要多语言支持,别偷懒,这些基础打牢了,后面好维护也好扩展。

doc 文件大小:30.5KB