在destoon的实际使用过程中我们往往需要根据情况建立一些系统没有的模块,这时候就需要复制已有的模块来根据已有模块建立新的模块,具体操作方法如下:

首先选择一个我们需要的模块(因为系统默认文章和信息模块是可以复制的,在这里我们只研究非默认的模块怎么复制),我选择的是模块名称是品牌,目录名是brand,模块ID是13,你也可以根据你的需要选择要复制的模块。

第一步,复制根目录下的brand这个文件夹,粘贴然后重命名,这里我们用rename命名作为示范。于是你的根目录下多了一个名称为rename的文件夹,我们打开这个文件夹,找到config.inc.php这个文件,打开后里面是这样写的

<?php
$moduleid = 13;
?>

把这里的13改成一个你现在模块ID里没有的数字,我们用88代替它作为示范。

第二步,找到根目录下/module这个文件夹打开,复制里面的brand文件夹,粘贴后重命名为rename,打开这个新文件夹内的admin/config.inc.php这个文件,里面的文件是这样的(为方便理解,此处增加了注释)

<?php
defined(‘IN_DESTOON') or exit(‘Access Denied');
$MCFG['module'] = ‘brand';//这里改为 ‘rename';
$MCFG['name'] = ‘品牌';//这里改为你的新模块名比如: ‘新模块';
$MCFG['author'] = ‘Destoon.COM';
$MCFG['homepage'] = ‘www.destoon.com';
$MCFG['copy'] = false;//这里改为true;
$MCFG['uninstall'] = true;
$MCFG['moduleid'] = 13;//这里改为88;
$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']['expire'] = ‘过期品牌';
$RT['action']['index']['reject'] = ‘未通过品牌';
$RT['action']['index']['recycle'] = ‘回收站';
$RT['action']['index']['move'] = ‘移动品牌';
$RT['action']['index']['level'] = ‘品牌级别';
$CT = true;
?>
将这里的品牌,全部替换为你的新模块名比如:'新模块',并根据注释做相应修改后保存,然后打开同级目录内的html.inc.php这个文件在大概65和66行找到
if($update) {
require MD_ROOT.'/brand.class.php';
$do = new brand($moduleid);
}
把两个brand替换为rename后保存,再打开同级目录内的index.inc.php这个文件,在大概在第三行找到
require MD_ROOT.'/brand.class.php';
$do = new brand($moduleid);

同样把这两个brand替换为rename后保存,OK,找到上级目录(根目录/module/rename)的my.inc.php这个文件,用编辑器的替换功能把所有brand替换为rename后保存,再打开同级目录下的brand.class.php这个文件,同样用编辑器的替换功能把所有brand替换为rename后另存为(注意是另存为)rename.class.php。

第三步,找到你的模板路径(默认为根目录/template/default)复制brand文件夹粘贴后重命名为rename,再打开同级目录下的member文件夹找到my_brand.htm这个文件,复制粘贴后重命名为my_rename.htm。

做完以上三步,我们的复制模块之路的代码方面就基本完成了,接下来就是复制数据库了,找到数据库中destoon_brand和destoon_brand_data这两张表,复制后重命名为destoon_rename和destoon_rename_data,(如果数据库在运行中,可能需要暂停后执行以上操作)

OK,完成之后登录后台,在 我的面板-》模块管理 里面选择添加模块,然后填入模块名称如: “新模块”,在所属模型这个下拉选项中你会发现多出来一个名为“新模块”的选项,选中它,在安装目录里填上rename,点确定。然后去功能模块中看,是否已经多出来一个名为 “新模块”的功能模块?如果出现,说明你刚刚的操作没有问题,恭喜你模块已经添加完成了。但是你沉浸在喜悦之中急切的想在新模块中添加数据的时候发现页面是空白的,这是为什么呢?原因就在于在模块设置里面有个信息排序方式,在这里随便选择一个,顺便把下面的列表或搜索主字段也填填吧,填完之后点确定,再去试一试添加是不是就可以使用了?

实际使用过程中还会遇到一个问题,就是添加的这个模块在会员中心使用的时候提示没有权限,请升级,去看了后台会员组权限发布信息的权限已经做了勾选,为什么还提示权限不够呢?解决方法是,找到根目录/module/member/admin/template/group_edit.tpl.php这个文件,在大概762行找到如下代码

</tr>
<tr>
<td class=”tl”>发布下载总数限制</td>
<td>
<input type=”text” name=”setting[down_limit]” size=”5″ value=”<?php echo $down_limit;?>”/>
</td>
</tr>
<tr>
<td class=”tl”>免费发布新模块数量</td>
<td>
<input type=”text” name=”setting[down_free_limit]” size=”5″ value=”<?php echo $down_free_limit;?>”/>
</td>
</tr>
改为:
</tr>
<tr>
<td class=”tl”>发布新模块总数限制</td>
<td>
<input type=”text” name=”setting[rename_limit]” size=”5″ value=”<?php echo $rename_limit;?>”/>
</td>
</tr>
<tr>
<td class=”tl”>免费发布下载数量</td>
<td>
<input type=”text” name=”setting[rename_free_limit]” size=”5″ value=”<?php echo $rename_free_limit;?>”/>
</td>
</tr>
复制这段改过的代码放在前面找到的那段代码的下面,保存后刷新,再去设置里面查看一下,最下面多出来两个需要填写的输入框,填进相关数字,点确定。OK,到这里会员就可以使用新模块了。

转载于:https://www.cnblogs.com/xiaoqiangjun/p/6692138.html

destoon复制新模块的方法相关推荐

  1. JS 复制新数组的方法

    JS 复制新数组的方法 需求:将旧数组复制新数组,不是引用 方法1: arr = [1,2,3]; let newArr = new Array(); arr.forEach((item) => ...

  2. destoon 自定义新模块模块(手机模块)

    前面我们讲过了destoon 怎样自定义一个新的模块,现在让我谈谈怎样定义一个手机模块换句话说就是新模块的网页内容可以有手机版 准备工作 1.destoon下载地址:http://www.destoo ...

  3. java怎么新建模块_spring boot添加新模块的方法教程

    前言 在springboot项目框架里,把一个项目两大模块,主项目main和测试项目test,而我们的测试项目根据功能又可以再分,比如可以有单元测试,集成测试,业务测试等等. 对于一个初学者来说,建立 ...

  4. php 多条查询结果插入新表,Mysql应用MySQL查询结果复制到新表的方法(更新、插入)...

    <Mysql应用MySQL查询结果复制到新表的方法(更新.插入)>要点: 本文介绍了Mysql应用MySQL查询结果复制到新表的方法(更新.插入),希望对您有用.如果有疑问,可以联系我们. ...

  5. maven上解决循环依赖、又不想新加第三模块的方法

    maven上解决循环依赖.又不想新加第三模块的方法 参考文章: (1)maven上解决循环依赖.又不想新加第三模块的方法 (2)https://www.cnblogs.com/yuan951/p/89 ...

  6. mysql查询结果更新到新表_MySQL查询结果复制到新表的方法(更新、插入)

    MySQL中可以将查询结果复制到另外的一张表中,复制的话通常有两种情况,一种是更新已有的数据,另一种是插入一条新记录.下面通过例子来说明.首先构建两个测试表. 表t1: 表t2: 1.如果t2表中存在 ...

  7. php 插件加载不出来了,织梦第三方响应式后台辅助插件不显示新模块和插件的解决方法...

    网络上很多织梦后台模板看起来挺好看但是很多地方写的不够智能完善,都是织梦后台模板左侧辅助插件写死,明明上传和安装了新的模块和插件,但是辅助插件选项里还是没有显示. 今天这篇教程 ,我们针对T10模板不 ...

  8. python安装模块的方法(两种方法,复制即可用)

    这里简单的介绍python安装模块的两种方法. 第一种 在pycharm中安装模块 我这里是因为已经安装了,所以会出现这个. # 安装模块 # pip install 模块名 # 可以指定安装版本 如 ...

  9. python添加自定义模块_Python中添加自定义模块的方法

    Python中添加自定义模块的方法 发布时间:2020-07-17 14:01:03 来源:亿速云 阅读:95 作者:小猪 这篇文章主要讲解了Python中添加自定义模块的方法,内容清晰明了,对此有兴 ...

最新文章

  1. [JS] 如何判断一个对象是否为空
  2. vue之mapMutaions的使用 vuex中 action 用法示例 api.js的使用
  3. SpringMVC解决@ResponseBody返回乱码问题
  4. windows下sse性能对比
  5. python编程在哪里写-python入门该从哪里开始?
  6. LESSON 3 线性回归的手动实现
  7. Go 语言新提案:添加模糊测试支持
  8. 修改linux路径,科学网-修改linux终端路径颜色-胡涛的博文
  9. 翁同龢后人向上海博物馆捐赠两件重要家藏
  10. java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal问题解决
  11. oracle数据库数据表误删后,恢复数据处理方式
  12. ps里面的css,PS图层样式详解(上)
  13. Java:使用POI实现word的docx文件的模板功能
  14. php操作pdf文档输出,PHP生成PDF文档实用技巧
  15. 中国石油大学(北京)-《 完井工程》第三阶段在线作业
  16. 移动设备网页中快速响应单击动作
  17. java Field类
  18. 最新论文笔记(+19):TrustFed: A Framework for Fair and Trustworthy Cross-Device Federated Learning in IIoT
  19. 2019阿里校招测评题 光明小学完全图最短路径问题
  20. 1godaddy主机ram_在GoDaddy主机上修复mod_rewrite和.htaccess

热门文章

  1. 第一:如何解决robot framework log.html中的中文乱码问题
  2. 最新试客联盟JS逆向分析
  3. springboot maven项目打jar包
  4. EMS --Web Development Kit开发
  5. Java 调用Web service 添加认证头(soapenv:Header)
  6. java 祖父类_JAVA的XX.put中的put方法,是在哪个父类或祖父类中,详述父类链。
  7. python票务系统_列车票务系统
  8. asyncdata 获取参数_nuxt的asyncData发送post请求如何传递FormData形式的参数
  9. 表情可字怎么打_小辫子表情怎么打?两根毛表情符号复制
  10. java计算两列数据差_DAX计算列基于其他表中的两列