云服务器促销,免费安装宝塔面板!
开启左侧

[DZ教程] Discuz 插件的安装、卸载和升级XML制作方法

[复制链接]
班大大 发表于 2017-8-29 23:19:49 | 显示全部楼层 |阅读模式

本站会员必须 邮箱验证成功后 才能发帖。马上注册查阅更多教程,下载海量资源,让你轻松玩做站

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

x
一、安装、卸载, ~4 F( }; c1 B6 G
插件作者可以设计 2 个脚本文件用于插件的安装和卸载,文件名任意。脚本中可用 runquery() 函数执行 SQL 语句,表名可以直接写“cdb_”。插件作者只需在导出的 XML 文件结尾加上安装、卸载脚本的文件名即可6 a) L7 s; q/ k' O; K: L- n7 q
  1. <item id="installfile"><![CDATA[install.php]]></item>
    % s2 d. [# {  ]+ Y$ X0 ]6 `
  2.                     <item id="uninstallfile"><![CDATA[uninstall.php]]></item>" q2 Y, e( ?8 F
  3.             </item>' l1 i1 b! I9 @; H& l6 Q
  4.     </root>
复制代码

3 I2 G; C' o5 O4 [$ P  C5 O! P3 b+ j. f. k7 a% N& \
安装、卸载程序中可随意设计页面的跳转,只要在插件安装、卸载结束时候输出添加以下代码即可。' E; S# D/ z% D7 W- G' q5 G
  1. $finish = TRUE;
复制代码

3 `8 R$ r+ j: @. I7 ?" }3 Q% p/ x" h+ \7 h1 A
二、升级
6 J; j7 L2 l# R- a; n插件作者可以设计一个脚本文件用于插件的升级,文件名任意。脚本中可用 runquery() 函数执行 SQL 语句,表名可以直接写“cdb_”。插件作者只需在导出的 XML 文件结尾加上升级脚本的文件名即可8 {3 j: p0 z; ^" l0 `
  1. <item id="upgradefile"><![CDATA[upgrade.php]]></item>
    3 L! l3 U0 W2 x+ @
  2.             </item>) I+ d8 L6 u3 r/ t# {; |; \& H& Y
  3.     </root>
复制代码
' x$ [  f, A: i- U
+ Z* ]/ g6 a1 L: I6 X9 ]
升级程序中可通过 $fromversion 和 $toversion 变量判断升级的具体版本号,并随意设计页面的跳转,只要在插件升级结束时候输出添加以下代码即可。
. P, p) u* @2 W' @2 ]0 T$finish = TRUE;' P4 X7 {1 [2 s- T
复制代码* k- c1 ^5 u. y! h( r$ K7 @
插件的当前版本号位于 XML 文件的以下分支中,可自行更改。
! j' t6 P! _5 [7 c6 u' G
  1. <item id="plugin">* l! [/ }1 u2 g2 P
  2.                     ......
    $ W) d) }' w; X1 F2 F) j$ y& k
  3.                     <item id="version"><![CDATA[当前版本]]></item>; Q% k( L1 F  ]7 D
  4.                     ......
    ( Q: |% B: v1 T' |; _4 I5 E" O
  5.             </item>
复制代码
" F# ~! V/ V8 [% p2 i4 C  T

, Q- ~3 I" j. V& Q三、检测
4 W3 I$ w5 w4 r& O5 h# l$ b" ]5 z插件作者可以设计一个脚本文件用于插件在安装、卸载、升级操作前的检测,文件名任意。插件作者只需在导出的 XML 文件结尾加上检测脚本的文件名即可
6 Y- E0 j' B& M' u
  1. <item id="checkfile"><![CDATA[check.php]]></item>7 M4 @$ X7 ^' r( E% r
  2.             </item>
    + _( F; o" D- B/ s% M# r
  3.     </root>
复制代码

5 x* `* y! X  Z9 x2 _- `) Z
5 a6 p* }, W  |+ T1 B5 G9 @9 @四、授权协议、插件介绍
8 h; i, [# Q3 u插件在安装的时候您可以自定义授权信息文本,文本支持 discuz! 代码,站长同意后才能安装插件。如果插件存在后台管理界面或者变量配置,那么插件介绍文本会显示在插件后台页面中。插件作者只需在导出的 XML 文件结尾加上以下内容即可9 ~) _; h9 Q& e# k# C! k
  1. <item id="license"><![CDATA[授权协议文本]]></item>
    ) `9 s& [$ X: H5 H) y- O5 }
  2.                     <item id="intro"><![CDATA[插件介绍文本]]></item>
    1 ~, N3 V8 t6 e2 f& g+ p& U
  3.             </item>& W0 s5 O# H" N3 f6 n! Z  o( Q; ^
  4.     </root>0 K5 z/ i& i9 ~2 h0 V2 p8 ~% }
复制代码
4 D' I7 l# t8 f! J; j# n  Z
五、Discuz! 版本兼容性设置' [; A; R' {# V* u
请仔细检查您的插件是否可以在相应的 Discuz! 版本中运行。然后在 XML 文件的以下分支中自行更改。
7 J# M7 ?7 Q5 J3 _
; m. l: C# O$ E7 |1 m如您的插件兼容多个版本,请用逗号(,)分隔,如“X2,X2.5”(此写法从 Discuz! X2 R20120329 后开始支持)
* f' y- n; s* B; \0 a7 D
  1. <item id="Data">3 H; e& L. g; w- G) e
  2.                     <item id="plugin">
    0 I8 N# _" K! H2 g: C
  3.                                 ......% ?0 c! t! O0 A* ?6 y8 q
  4.                     </item>$ E0 g$ `2 Q2 l& O$ Y/ Q
  5.                     ......* F" Y+ |% E; t8 n$ @
  6.                     <item id="version"><![CDATA[兼容性设置]]></item>
      M, C, Z4 E& P
  7.                     ......
    8 `: i" w- j* c/ E3 n
  8.             </item>
复制代码

2 F4 Z# c, b& R9 t/ \) c. k0 V. o2 w! Q) [
六、其他论坛数据导入
0 I. G8 Q/ J- U$ ?. ^插件安装时可以直接导入一个或多个论坛数据,这些论坛数据包括表情(smilies)、风格(styles)的数据。在导出的 XML 文件结尾加上需要导入数据的类型和数据文件名即可,多个文件名用逗号(",")分隔。
% q; n& i: i0 Z7 p
  1. <item id="importfile">
    & l, I4 h) P9 G* `: _0 w9 l: ?3 W
  2.                             <item id="smilies"><![CDATA[discuz_smilies_test.xml]]></item>2 a" q$ d- x4 u. f$ R3 b# G0 ]; G
  3.                             <item id="styles"><![CDATA[discuz_styles_test.xml]]></item>
    & Q* I/ k+ `* T  `  w  A2 m6 Y
  4.                     </item>
    2 T6 i/ q) n7 J* T  u( d0 g
  5.             </item>
    ) C  y$ ~) \* Z( F
  6.     </root>
复制代码

  q! [; \& |: i1 V& ~  ?- k: X  R8 p- \/ G' \7 a
七、小提示; q8 r1 @% p$ l$ N4 Q$ L- \
如果导出的 XML 文件名以 SC_GBK、SC_UTF8、TC_BIG5、TC_UTF8 结尾,显示的时候将直接显示为“简体”、“繁体”、“UTF8”等字样。
当流科技-专业Discuz建站、仿站业务,专注处理discuz!论坛挂马,专注提供论坛托管维护服务! 提供Discuz论坛空间、VPS、云服务器!咨询QQ 569160956 778521512
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩课程推荐

Discuz!论坛网盘附件免跳转下载(手机版网

主讲:当流科技 Discuz插件

抱歉,当前存在网络问题或服务器繁忙,详细错

主讲:我心枫叶 Discuz!教程

宝塔面板绑定域名无法访问后台怎么解决?

主讲:风雨兼程 服务器学院

discuz论坛搬家教程,如何搬迁到新服务器?

主讲:风雨兼程 Discuz!教程

宝塔面板phpmyadmin 数据库502 Bad Gateway

主讲:当流科技 服务器学院

Discuz!X3.3全新安装和升级后快速回复框丢

主讲:风雨兼程 Discuz!教程

宝塔面板mysql怎么用navicat 连接数据库呢

主讲:当流科技 服务器学院

Discuz! X3.4虚拟人气虚拟用户在线插件 完

主讲:执手天涯 Discuz插件

商务合作

0551-66191059
service#dangliu.net
点击这里给我发消息
dz论坛/Discuz!论坛新手

关注微信公众号

QQ扫码 加 DZ技术群