转载-Destoon 自定义模块

Destoon 自定义模型的要义
1、先在 module 目录下,新建模型目录,如:book -> admin -> config.inc.php

config.inc.php 配置如下:

<?php
defined(‘IN_DESTOON‘) or exit(‘Access Denied’);
$MCFG = array();
$MCFG[‘module’] = ‘book’;
$MCFG[‘name’] = ‘图书’;
$MCFG[‘author’] = ‘bananaplan’;
$MCFG[‘homepage’] = ‘www.baidu.com’;
$MCFG[‘copy’] = true;
$MCFG[‘uninstall’] = true;
$MCFG[‘moduleid’] = xxx;

$RT = array();
$RT[‘file’][‘index’] = ‘图书管理’;
$RT[‘file’][‘html’] = ‘更新网页’;

$RT[‘action’][‘index’][‘add’] = ‘添加图书’;
$RT[‘action’][‘index’][‘edit’] = ‘修改图书’;
$RT[‘action’][‘index’][‘delete’] = ‘删除图书’;
$RT[‘action’][‘index’][‘check’] = ‘审核图书’;
$RT[‘action’][‘index’][‘recycle’] = ‘回收站’;

$CT = true;
?>
2、在 file/setting 下,新建 module-xxx.php 和 book.sql 文件,内容如下:

<?php
defined(‘IN_DESTOON’) or exit(‘Access Denied’);
return array(
‘moduleid’ => xxx,
‘name’ => ‘图书’,
‘moduledir’ => ‘read’,
‘module’ => ‘book’,
‘ismenu’ => ‘0’,
‘domain’ => ”,
‘linkurl’ => ‘http://xxx.xx/read/’,
);
?>
DROP TABLE IF EXISTS `destoon_book`;
CREATE TABLE `destoon_book` (
`itemid` bigint(20) unsigned NOT NULL auto_increment,
`catid` int(10) unsigned NOT NULL default ‘0’,
`title` varchar(100) NOT NULL default ”,
`introduce` varchar(255) NOT NULL default ”,
`price` decimal(10,2) unsigned NOT NULL default ‘0.00’,
`tag` varchar(100) NOT NULL default ”,
`keyword` varchar(255) NOT NULL default ”,
`hits` int(10) unsigned NOT NULL default ‘0’,
`thumb` varchar(255) NOT NULL default ”,
`thumb1` varchar(255) NOT NULL default ”,
`thumb2` varchar(255) NOT NULL default ”,
`addtime` int(10) unsigned NOT NULL default ‘0’,
`adddate` date NOT NULL default ‘0000-00-00’,
`edittime` int(10) unsigned NOT NULL default ‘0’,
`editdate` date NOT NULL default ‘0000-00-00’,
`status` tinyint(1) NOT NULL default ‘0’,
PRIMARY KEY (`itemid`)
) TYPE=MyISAM COMMENT=’图书’;

DROP TABLE IF EXISTS `destoon_book_data`;
CREATE TABLE `destoon_book_data` (
`itemid` bigint(20) unsigned NOT NULL default ‘0’,
`content` mediumtext NOT NULL,
PRIMARY KEY (`itemid`)
) TYPE=MyISAM COMMENT=’图书内容’;
3、在 module/book/admin 下,新建 install.inc.php,内容如下:

<?php
defined(‘IN_DESTOON’) or exit(‘Access Denied’);
$setting = include(DT_ROOT.’/file/setting/module-xxx.php’);
update_setting($moduleid, $setting);
$sql = file_get(DT_ROOT.’/file/setting/’.$module.’.sql’);
sql_execute($sql);
include DT_ROOT.’/module/’.$module.’/admin/remkdir.inc.php’;
?>
4、在 module/book/admin 下,新建 remkdir.inc.php,内容如下:

<?php
defined(‘IN_DESTOON’) or exit(‘Access Denied’);
file_copy(DT_ROOT.’/api/ajax.php’, DT_ROOT.’/’.$dir.’/ajax.php’);
install_file(‘index’, $dir, 1);
install_file(‘list’, $dir, 1);
install_file(‘show’, $dir, 1);
?>
5、最后,在 module/book/admin 下,新建 menu.inc.php,内容如下:

<?php
defined(‘IN_DESTOON’) or exit(‘Access Denied’);
$menu = array(
array(“添加”.$name, “?moduleid=$moduleid&action=add”),
array($name.”列表”, “?moduleid=$moduleid”),
array(“审核”.$name, “?moduleid=$moduleid&action=check”),
array(“分类管理”, “?file=category&mid=$moduleid”),
array(“更新数据”, “?moduleid=$moduleid&file=html”),
array(“模块设置”, “?moduleid=$moduleid&file=setting”),
);
?>
至此,已配置完毕新的模型,基于此模型创建模块的一切数据和配置准备就绪:模型基本配置【config.inc.php】、模块设置模版【module-xxx.php】、数据库创建脚本【book.sql】、安装程序【install.inc.php、remkdir.inc.php】和 后台模块管理菜单【menu.inc.php】。下面可以新建模块了。

在模块管理中,新建继承 book 模型的模块,如新建了一个叫 读书 的模块,模块目录为 read。

模块创建成功后,系统会创建 read 前台文件夹,里面有 config.inc.php 等前台代码文件,同时,book 模型的安装程序会设置模块配置到 file/cache/module-xxx.php,并同步 yzmg_setting 数据表,执行数据表创建脚本,新建此模块所需的所有表结构,安装完毕。

虽然基于新模型的模块安装完毕了,但是后台管理和前台功能都还没有,所以下面就要进入先开发后台功能,再开发前台功能的过程了:

例如:

在 module/book/admin 下新建 index.inc.php,它是 book 模块后台功能的入口文件,在此文件中,编写后台逻辑代码,后台模版放在 module/book/admin/template 下。

在 module/book 下,一般要新建如 common.inc.php、global.func.php、book.class.php 的代码文件,以实现前后台统一的数据配置和业务逻辑代码的复用。

最后,基于此模块框架,完成后台和前台功能的开发。
————————————————
版权声明:本文为CSDN博主「多么不容易」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_28466271/article/details/105389890

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

石家庄网络营销有限公司 技术支持 转载-Destoon 自定义模块 https://www.5051688.com/6590.html

常见问题

相关文章

  • 0 +

    访问总数

  • 0 +

    会员总数

  • 0 +

    文章总数

  • 0 +

    今日发布

  • 0 +

    本周发布

  • 0 +

    运行天数

以最大的热情,为您提供优质的服务
转载-Destoon 自定义模块-海报

分享本文封面