栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > 齐博CMS

模块安装文件讲解 - 齐博CMS之X1

齐博CMS 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

模块安装文件讲解 - 齐博CMS之X1

频道模块存放的目录是
/application/频道目录/

插件存放的目录是
/plugins/插件目录/

他的安装目录都是/install/

推荐参考默认的
/application/cms/install/
复制整个安装目录出来进行修改


install.sql 数据库资料,一般来说,这是必须的,一个模块是缺少不了数据库的

数据库中其它都好理解,但是有一项非常关键的地方,大家务必高度重视
举个例子


INSERT INTO `qb_config` (`id`, `type`, `title`, `c_key`, `c_value`, `form_type`, `options`, `ifsys`, `htmlcode`, `c_descrip`, `list`, `sys_id`) VALUES(0, -1, 'SEO标题', 'mseo_title', '', 'text', '', 0, '', '', 100, 4);


`id`, `type`,
这两项是非常关键的, id的值全部设置为0 设置为空即''也可以, **type的值必须设置为-1**

非常关键,重要的话,再重复一次, **type的值必须设置为-1**

因为系统所有的配置都存放在qb_config这个数据表里, 安装的时候,如何区分开来,就是根据 type为-1进行特别处理的. 其它各项参数保留从你原来系统导出来的值即可

你在本地调试模块添加参数的时候,在后台开发者功能那里添加各项参数, 添加好之后,就需要把他们导出来. 导出来后,其它可以不变,就只要把 id type 这两项,按上面说的,改一下,即可

用到其它数据表的话,最好是加上
DROp TABLE IF EXISTS ******;


如果有用到钩子的话,

INSERT INTO `qb_hook_plugin` (`id`, `hook_key`, `plugin_key`, `hook_class`, `about`, `ifopen`, `list`, `author`, `author_url`, `version`, `version_id`) VALUES(0, 'layout_body_foot', '', 'app\weibo\hook\MsgRemind', '有新的微博动态消息,就弹层提醒', 1, 0, '齐博', 'http://www.php168.com', '', 0);

还需要你把钩子的数据表导出来,如上所示.

钩子数据表也需要把id的值变成0 其它就不需要修改
[![](https://box.kancloud.cn/04bf4226ecce3672411717b357f4bd7f_1772x524.jpg)](https://box.kancloud.cn/04bf4226ecce3672411717b357f4bd7f_1772x524.jpg)



如果安装后,需要执行一些特别的操作,可以把脚本写在

install/Install.php
这个文件


public function run($id=0){
}


方法统计用这个
$id代表安装成功以后对应的模型ID



系统卸载时,要把残留全清空的话,需要扫行脚本的话,
install/Uninstall.php
请在这个文件写脚本.

public function run($id=0){
query("DELETE FROM `qb_hook_plugin` WHERe `hook_class` = 'app\weibo\hook\Content'");
query("DELETe FROM `qb_hook_plugin` WHERe `hook_class` = 'app\weibo\hook\MsgRemind'");
}

他会在卸载前先执行.因为卸载后整个目录都会被删除掉.
比如上面的就是要钩子清空掉. 不然会残留有钩子,下次安装的时候,又会重复出现钩子.容易造成重复执行的问题.

如果仅仅是操作数据库的话,也可以把数据库代码放到
uninstall.sql
这个文件里边



重要提示:
如果安装时要安装钩子的话,请务必要确认卸载的时候,要把钩子清除干净,以防止用户重复安装导致多个钩子重复运行.


info.php
这个就是参数配置文件,每个模块都一样,对应的修改即可


return [
'keywords'=>basename(dirname(__DIR__)), //关键字,即是目录名也是数据表区分符
'name'=>'微动态', //模块名称
'author'=>'齐博', //开发者
'author_url'=>'http://www.php168.com', //开发者网站或者是演示网址
'type'=>'1', //当前模块是否可以复制
'about'=>'', //介绍
'version'=>'1.0', //版本号
'icon'=>'fa fa-fw fa-weibo', //CSS图片
'ifsys'=>'0', //是否禁止卸载
'config_group' =>['基础设置',], //参数配置分组
//涉及到的数据表,不要写前缀
'sql_db' =>['content','content1','field','module','member','sort','groups','visit','feed','fav'],
'bind_modules' =>'bbs', //依赖于哪个模块,多个用逗号隔开
'bind_plugins' =>'', //依赖于哪个插件,多个用逗号隔开
];
,
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/214227.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号