如下图所示,部分频道与插件都可以在后台自行复制一份出来,重新添加创建模型与字段,再配合一套某个领域行业的风格,就可以成为一款新的服务于某个具体行业的模块应用。但如何分享上架应用市场给他人使用呢?这一节里边,我们就跟大家讲解,如何配置安装程序,让程序可以自行安装。 ![](https://img.kancloud.cn/00/7b/007b39da0e98e57195f7d7f46ac83c00_1830x964.png) 大家看下图,无论是频道还是插件目录下面都有一个install的目录,这个目录是担任模块的自动安装的。 ![](https://img.kancloud.cn/c6/77/c677c52a1cf07525110da211f33bb07b_974x516.png) 再看下图,安装目录下面文件虽然有好几个,但用得最多,而且必须要用到的就只有两个, `info.php`是配置文件 `install.sql`是数据库文件 ![](https://img.kancloud.cn/74/82/7482641b3ce05c16273d5c6d05a44d6e_721x557.png) 其中`info.php`配置文件中有两项是必须要修改的,如下图所示 ![](https://img.kancloud.cn/0e/0d/0e0d3893266887c902d7f442928cd47d_1546x884.png) `'author_url'` `'about'` `'version'` `'sql_db'` 这几项并不重要,不影响安装使用,你自行随意修改就好了,其中`'version'`代表版本号没有实际意义,因为系统是在线自动更新的。`'sql_db'`代表用到的数据库,也意义不大,可忽略或删除都可以及。 `'keywords'`保留默认的就可以了,系统会自动识别的,这个很重要,不能删除。 `'name'` , 模块名称,确定好就不要随意换了。 `'icon'` 模块的图标,找一个类似就可以了. `'ifsys'` 设置为1的话,允许用户复制此模块,0的话就禁止复制,你自行考虑吧. `'config_group'` 这一项很重要,缺少或为空的话,后台默认就没有参数配置的功能选项.名称可随意 `'bind_modules'` 这一项代表当前模块要依赖于哪些频道才能正常运行,删除或留空的话,代表可以独立运行,不依赖任何频道。比如圈子就需要依赖论坛才能正常运行的。 支持多个频道的依赖设置,频道目录名是关键,后面的名称可随意。 ~~~ 'bind_modules' => [ 'bbs'=>'论坛', //'giftshop'=>'积分商城' , ], ~~~ `'bind_plugins'` 这一项代表当前模块要依赖于哪些插件才能正常运行,删除或留空的话,代表可以独立运行,不依赖任何插件。比如考试系统就需要依赖收藏夹插件才能正常运行的。 支持多个插件的依赖设置,插件目录名是关键,后面的名称可随意。 ~~~ 'bind_plugins' => [ 'signin'=>'会员每天签到领积分' 'xxxxx'=>'某某插件', ], ~~~ ![](https://img.kancloud.cn/e2/0b/e20bfde8a1d2c7fb381ceeaff0e6042c_960x663.png) ***** `install.sql`是数据库文件,他分两部分,一部分是私有的数据表,另一部分就是如下图所示参数配置,他是共用系统的`qb_config`数据表,为何要共用?主要是考虑到插件可能几十上百个,但很多时候,一个插件用到的就几条记录,那没必要单独搞一个表,太累赘了占用系统资源。也为读取的效率考虑。 ***** ![](https://img.kancloud.cn/21/ee/21ee30000fc8725eb23df7961dca50db_1909x925.png) ***** 配置文件的导出方法如下图所示 ![](https://img.kancloud.cn/11/9d/119d135df181401532d49efa97952b18_1379x911.png) 私有数据库的导出方法如下图,即通过备份数据库的形式,把用到的相关数据表备份出来。再跟上面的参数配置数据库合并到`install.sql`文件中即可 ![](https://img.kancloud.cn/00/36/00365c374af67b88b324db6f8fca4fae_1551x744.png) 最后特别要提醒,不要用记录事打开sql及php文件,他会强制加上UTF8+BOM字符的,这个字符是看不见的。会影响程序运行的。 ![](https://img.kancloud.cn/45/20/45200dc785b61403a7fc003496b8c503_1856x1007.png)