查看: 30|回覆: 7

[教程] discuz X3.4开发插件导出时的技巧

[複製鏈接]

69

主題

8

回帖

0

積分

热心网友

金币
8
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-1-9
發表於 2019-6-1 16:52:46 | 顯示全部樓層 |閲讀模式
*************************************************
** 本教程基于版本: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 文件中增加:


  1.         <item id="installfile"><![CDATA[install.php]]></item>
  2.         <item id="uninstallfile"><![CDATA[uninstall.php]]></item>

此代码,即可完全免去手动修改 xml 的操作了~~

分析代码:
打开 source\admincp\admincp_plugins.php 这个文件可以看到:

  1.         if(file_exists($plugindir.'/install.php')) {
  2.                 $pluginarray['installfile'] = 'install.php';
  3.         }
  4.         if(file_exists($plugindir.'/uninstall.php')) {
  5.                 $pluginarray['uninstallfile'] = 'uninstall.php';
  6.         }
  7.         if(file_exists($plugindir.'/upgrade.php')) {
  8.                 $pluginarray['upgradefile'] = 'upgrade.php';
  9.         }
  10.         if(file_exists($plugindir.'/check.php')) {
  11.                 $pluginarray['checkfile'] = 'check.php';
  12.         }


Tahoma, 插件, quot, 文件
回覆

使用道具 舉報

0

主題

24

回帖

0

積分

热心网友

金币
24
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2009-5-18
發表於 2023-3-29 00:31:45 | 顯示全部樓層
看一看,支持一下
回覆

使用道具 舉報

0

主題

1

回帖

0

積分

热心网友

金币
1
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2009-9-27
發表於 2023-6-12 22:30:21 | 顯示全部樓層
学习学习,希望能解决问题。
回覆

使用道具 舉報

0

主題

2

回帖

0

積分

热心网友

金币
2
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2009-4-13
發表於 2023-6-17 06:46:20 | 顯示全部樓層
https://addon.dismall.com/plugins/tshuz_developer.html
回覆

使用道具 舉報

31

主題

280

回帖

0

積分

热心网友

金币
280
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2010-2-26
發表於 2023-6-27 14:50:38 | 顯示全部樓層
6,学到了
回覆

使用道具 舉報

0

主題

1

回帖

0

積分

热心网友

金币
1
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2009-9-13
發表於 2023-7-1 15:20:31 | 顯示全部樓層
这个要看
回覆

使用道具 舉報

0

主題

2

回帖

0

積分

热心网友

金币
2
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-4-18
發表於 2023-8-3 10:58:24 | 顯示全部樓層
正需要~谢谢
回覆

使用道具 舉報

0

主題

2

回帖

0

積分

热心网友

金币
2
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-4-18
發表於 2023-8-8 18:49:15 | 顯示全部樓層
看一看,支持一下
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部