Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[展示] 开发者福音:妙用组件功能实现按需安装(组件功能使用教程)

[复制链接]
戏水 发表于 2013-1-9 17:23:42 | 显示全部楼层 |阅读模式
本帖最后由 戏水 于 2013-1-9 17:52 编辑

组件功能使用教程

一、组件功能实现按需应用功能模块化
组件功能可以让开发者将自己的应用按功能模块进行分别发布和收费。
组件是指您应用的部分文件,其中不能包含应用的安装脚本(XML)。用户下载组件后,组件中的文件会自动添加到应用目录(同名的会被覆盖)。组建要依赖于应用基础版本才有作用。

二、如何使用组件功能
下面以一个应用ceshi为例说明,我们希望这个应用分为两部分,基础免费部分和收费功能模块。其中基础免费部分可以自由下载,安装后可以享用应用的基础功能。收费功能模块有多个,用户可以根据需求购买下载自己需要的功能模块,收费组件依赖于基础功能部分,必须先下载基础功能部分再下载组件,相应功能才能实现。那么,在设计此应用的时候,我们可以进行如下设计:





其中,ceshi.inc.php文件为基础功能模块,其中只包括免费的基础功能部分(当然也可以加入其他复杂逻辑,比如在里面加入收费功能模块判断,如果存在某个收费模块就自动调用实现相应功能等)。ceshi_shoufeimokuai_1.php等三个文件分别对应三个不同的收费功能。那么我们在发布应用的时候就可以进行如下操作:
首先将基础部分以插件的形式打包并发布,如下图





打包路径为ceshi.zip/ceshi/各插件文件(如上图)。
发布方式与普通插件发布方式相同。
然后将收费模块按功能分别打包:如收费模块1应该打包成:ceshi.zip/ceshi/ceshi_shoufeimokuai_1.php  (只包含与这个功能相关的文件)





然后将这个压缩包按组件的方式上传,如下图:






在此,您可以设置该组件的收费信息等。
用户在下载了免费版的应用后,如果购买下载了组件1,那么用户本地的文件目录就会如下图:




注意:组件中的同名文件会覆盖源文件,例如,您在组件1中也提供了一个ceshi.inc.php文件的话,那么下载组件1后,就会覆盖同一目录中的ceshi.inc.php文件。

三 成功案例




本帖子中包含更多资源

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

x

评分

1

查看全部评分

湖中沉 发表于 2013-1-9 17:25:43 | 显示全部楼层
感谢戏水哥出教程,顺便推下新插件——多彩名片:https://addon.dismall.com/?@k_usercard.plugin
回复

使用道具 举报

hostbrian 发表于 2013-1-9 17:36:31 | 显示全部楼层
关注, 支持!!
回复

使用道具 举报

春晓的马甲 发表于 2013-1-9 17:37:16 | 显示全部楼层
前排支持!!
回复

使用道具 举报

eisdl 发表于 2013-1-9 17:39:30 | 显示全部楼层
必须支持平台功能!
回复

使用道具 举报

日久见人心 发表于 2013-1-9 17:40:29 | 显示全部楼层
占个位子哦 不懂什么是组件呢
回复

使用道具 举报

ec1022 发表于 2013-1-9 17:45:10 | 显示全部楼层
前排支持
回复

使用道具 举报

jim116801 发表于 2013-1-9 17:45:32 | 显示全部楼层
前排支持!
回复

使用道具 举报

柒瑞爱心天使 发表于 2013-1-9 17:47:38 | 显示全部楼层
讲的比较清楚了,呵呵。
回复

使用道具 举报

pcyi 发表于 2013-1-9 17:52:22 | 显示全部楼层
来看看是什么
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-15 13:29 , Processed in 0.027829 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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