phpcms v9新模块的安装及卸载

2025-10-29 07:22:43

1、进入phpcms V9 后台管理的“模块管理”页面(此处我跳过了phpcms 项目的安装过程,有兴趣的同学可以参考本人的另一篇经验:http://jingyan.baidu.com/article/9989c746da8402f648ecfed2.html),

phpcms v9新模块的安装及卸载

2、尝试卸载然后再安装默认的模块,从而了解后续新增模块的操作流程。通过实际操作我们发现一个好处是,增加了灵活性,达到了模块化的要求,以下我们尝试新建一个模块并达到可安装,可卸载的功能。

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

3、新建模块目录,此处将模块的名称命名为hlong(大家可以随意起名),并在该目录下创建以下几个目录:

classes(类目录)

functions(函数目录)

install(安装目录)

templates(后台模板目录)

uninstal(卸载目录)

phpcms v9新模块的安装及卸载

4、在install目录下新建一个config.inc.php文件

复制粘贴以下代码:

defined('IN_PHPCMS') or exit('Access Denied');

defined('INSTALL') or exit('Access Denied');

$module = 'hlong';

$modulename = '红龙';

$introduce = '红龙测试模块';

$author = 'hlong';

$authorsite = 'http://www.xxx.xxx';

$authoremail = 'xxx@xx.com';

进入后台“更新缓存”这时候可以看到一个“红龙”模块处于可安装状态,但是这时候还没完成,我们继续。。

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

5、install目录下新建extention.inc.php文件

(1)parentid=29 表示在“模块列表”显示;

(2)parentid=0   表示在“主菜单”显示;

(3)parentid=其他(可在“拓展-菜单管理”中查看),表示在对应菜单显示;

复制粘贴以下代码:

defined('IN_PHPCMS') or exit('Access Denied');

defined('INSTALL') or exit('Access Denied');

$parentid = $menu_db->insert(array(

'name'=>'hlong', 

'parentid'=>'29', 

'm'=>'hlong', 

'c'=>'hlong', 

'a'=>'init',

'data'=>'',

'listorder'=>0, 

'display'=>'1'), true);

$menu_db->insert(array('name'=>'add', 'parentid'=>$parentid, 'm'=>'hlong', 'c'=>'hlong', 'a'=>'add', 'data'=>'', 'listorder'=>0, 'display'=>'1'));

$menu_db->insert(array('name'=>'edit', 'parentid'=>$parentid, 'm'=>'hlong', 'c'=>'hlong', 'a'=>'edit', 'data'=>'', 'listorder'=>0, 'display'=>'1'));

$menu_db->insert(array('name'=>'delete', 'parentid'=>$parentid, 'm'=>'hlong', 'c'=>'hlong', 'a'=>'delete', 'data'=>'', 'listorder'=>0, 'display'=>'1'));

$language = array('hlong'=>'红龙测试','add'=>'添加','edit'=>'修改','delete'=>'删除');

通过上述配置,我们在创建模块的同时,可以同时创建几个菜单“添加,修改,删除”

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

6、创建控制器文件和模板文件:

5步骤中,我们可以看到创建的内容(模块:hlong,控制器:hlong,方法:init)

控制器文件复制粘贴以下代码:

<?php

defined('IN_PHPCMS') or exit('No permission resources.');

pc_base::load_app_class('admin', 'admin', 0);

class hlong extends admin {

   function __construct() {

       parent::__construct();

}

    public function init() {

        include $this->admin_tpl('hlong');

}

}

由上述控制器文件,我们可以知道模板名称是“hlong”,在templdates目录下新建个test.tpl.php(注意后台模板文件后缀名为".tpl.php")文件

模板文件复制粘贴以下代码:

<?php

defined('IN_ADMIN') or exit('No permission resources.');

include $this->admin_tpl('header','admin');?>

<div我是红龙模块的测试内</div>

</body>

</html>

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

7、在install目录新建个modules.sql文件写上以下代码

INSERT INTO `phpcms_module` ( `module`, `name`, `url`, `iscore`, `version`, `description`, `setting`, `listorder`, `disabled`, `installdate`, `updatedate`) VALUES ('hlong', '红龙测试', '', '0', '1.0', '', '', '0', '0', '2017-05-24', '2017-05-24');

iscore(1:系统内置模块,0:可选模块);

disabled(1:禁止卸载,0:可卸载);

setting是模块的配置变量,是字符串数组

phpcms v9新模块的安装及卸载

8、在install目录下新建model.php文件:

安装模块时,系统会根据这个数组的值调用同目录下的同名sql文件

复制并粘贴以下代码:

<?php 

defined('IN_PHPCMS') or exit('Access Denied');

defined('INSTALL') or exit('Access Denied');

return array('hlong');

?>

在install目录下新建hlong.sql文件

复制并粘贴以下代码:

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

9、在model目录下新建hlong_model.class.php文件:

复制并粘贴以下代码:

<?php

defined('IN_PHPCMS') or exit('No permission resources.');

pc_base::load_sys_class('model', '', 0);

class hlong_model extends model {

    public function __construct() {

       $this->db_config = pc_base::load_config('database');

       $this->db_setting = 'default';

        $this->table_name = 'hlong';

        parent::__construct();

}

}

?>

phpcms v9新模块的安装及卸载

10、再次进入后台“模块管理”找到刚才的模块,点击安装:

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

11、在uninstall目录下新建extention.inc.php和hlong.sql文件,extention.inc.php返回值即是需要删除的表名,同时在uninstall目录中新建对应表名的dropsql语句:

extention.inc.php:

<?php

defined('IN_PHPCMS') or exit('Access Denied');

defined('UNINSTALL') or exit('Access Denied');

return array('hlong');

?>

hlong.sql:

DROP TABLE IF EXISTS `phpcms_hlong`;

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

12、再次进入后台“模块管理”,找到对应的模块,点击可卸载

phpcms v9新模块的安装及卸载

phpcms v9新模块的安装及卸载

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢