|
*************************************************
** 本教程基于版本:Discuz! X 3.4 **
*************************************************
在之前的插件體系中,設計一個插件的最后一個步驟就是將插件導出為xml 文件以便安裝,如果對于沒有單獨數據表的插件來說,這樣就算是最后一步了,但是如果對于有自己的插件表,甚至還有自己的一個安裝流程的插件來說,還需要自行編輯 xml 文件,添加安裝腳本的信息,或者是添加卸載等腳本的信息。
在 Discuz!x3.4中只要插件目錄中存在 install.php 或者 uninstall.php、 upgrade.php 這些文件,那么在導出的時候都會自動的在 xml 文件中生成對應的數據。極大的方便了插件開發者。
以官方的“我的馬甲”插件為例,在 source\plugin\myrepeats 目錄下存在install.php 和 uninstall.php 兩個文件,在Discuz!X 3.4中,如果在后臺-插件-設計 我的馬甲,中點擊導出的話是不會有這兩個文件的相關信息導出的,在 Discuz!X 3.4 中,將會自動在xml 文件中增加:
- <item id="installfile"><![CDATA[install.php]]></item>
- <item id="uninstallfile"><![CDATA[uninstall.php]]></item>
復制代碼
此代碼,即可完全免去手動修改 xml 的操作了~~
分析代碼:
打開 source\admincp\admincp_plugins.php 這個文件可以看到:
- if(file_exists($plugindir.'/install.php')) {
- $pluginarray['installfile'] = 'install.php';
- }
- if(file_exists($plugindir.'/uninstall.php')) {
- $pluginarray['uninstallfile'] = 'uninstall.php';
- }
- if(file_exists($plugindir.'/upgrade.php')) {
- $pluginarray['upgradefile'] = 'upgrade.php';
- }
- if(file_exists($plugindir.'/check.php')) {
- $pluginarray['checkfile'] = 'check.php';
- }
復制代碼
|
|