DESTOON 新增模块的方法

之前复制过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这个文件在大概69和70行找到

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,到这里会员就可以使用新模块了。

时间: 2024-10-06 22:22:22

DESTOON 新增模块的方法的相关文章

DESTOON 新增模块的方法(转)

首先选择一个我们需要的模块(因为系统默认文章和信息模块是可以复制的,在这里我们只研究非默认的模块怎么复制),我选择的是模块名称是品牌,目录名是brand,模块ID是13,你也可以根据你的需要选择要复制的模块. 第一步,复制根目录下的brand这个文件夹,粘贴然后重命名,这里我们用rename命名作为示范.于是你的根目录下多了一个名称为rename的文件夹,我们打开这个文件夹,找到config.inc.php这个文件,打开后里面是这样写的 <?php$moduleid = 13;?> 把这里的1

Nginx在线服务状态下平滑升级或新增模块

nginx在使用过程中,有时需要在不影响当前业务的情况下,进行升级或新增模块.nginx的升级有两种方法:1.半自动化升级:2.手动升级 不过都需要先查看安装的nginx版本和配置信息,然后前往官网下载所需的版本,并上传 [[email protected] ~]# nginx -V nginx version: nginx/1.14.1 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) configure arguments: --pre

NGINX编译安装后添加新模块的方法

刚忙完研发又有新的需求过来,测试服务器的nginx需要有HttpUpstreamRequestHashModule和HttpStubStatusModule:擦!安装软件环境时怎么不说清楚:妹的,悲剧. 测试服务器崩溃的是不是我安装的软件,天啊.赶紧搞吧!!! 环境:centos 6.4 64位 编译安装nginx 1:查看nginx版本和安装时间带的具体参数  /usr/local/nginx/sbin/nginx  -V 2:下载相应的版本的nginx源码包[nginx-1.5.11.tar

紫外线胶筑坝封装智能卡用cpu模块的方法

本发明提供了一种UV胶筑坝封装智能卡用CPU模块方法,在贴片.焊线后的载带上,用UV胶在每个器件的周围涂一圈,然后再用UV胶将坝内的芯片.金丝及其空隙填没掩盖叫填料,经过UV灯照射,固化成型并经过质量检测,实现电路封装.运用本发明方法封装的CPU模块,相比较无筑坝的封装,提高了合格率,用该模块制成的卡能承受比较高的压力和扭弯力,能更好地保护芯片.金丝,进而提高了CPU模块的可靠性. 1.一种UV胶筑坝封装智能卡用CPU模块的方法,其特征在于,所述方法包括如下步骤: a.筑坝:根据不同条带的cav

python在不同层级目录import模块的方法

使用python进行程序编写时,经常会使用第三方模块包.这种包我们可以通过python setup install 进行安装后,通过import XXX或from XXX import yyy 进行导入.不过如果是自己遍写的依赖包,又不想安装到python的相应目录,可以放到本目录里进行import进行调用:为了更清晰的理清程序之间的关系,例如我们会把这种包放到lib目录再调用.本篇就针对常见的模块调用方法汇总下. 一.同级目录下的调有 程序结构如下: -- src    |-- mod1.py

apache2服务器mod_rewrite模块 开启方法[linux, ubuntu]

在UBUNTU系统中要启用mod_rewrite的方法有两种: 第一种: 在终端中执行 sudo a2enmod rewrite 指 令后,即启用了 Mod_rewrite 模块, apache2服务器的模块启用方法就和虚拟主机的同IP多域名的启用方法一样, 所有的模块都在/etc/mods-available/文件夹下, a2enmod rewrite 这个命令其实就是把该模块名链接到/etc/apache2/mods-enabled/文件夹下, 如图(命令: ls -la /etc/apac

python安装第三方模块的方法

在python开发中,如何安装python模块呢?肯定很多初学者都在想为何要安装模块呢?因为这些模块中不包含在python的默认代码中,需要从外部下载并安装.比如pygame的Windows版本,直接双击安装就可以.但大多数模块没有提供这样的安装方式,有些同学没能成功安装而导致无法在程序中引入模块.在这里,介绍一下python模块几种常见的安装方法. 1.直接copy下载的模块文件中已经有了模块的文件,有些模块只有一个文件,比如较早版本的BeautifulSoup,有些是一个文件夹,比如新版本B

【Python基础】之三个文件在不同目录下导入指定模块的方法

如下图三个文件的目录路径 – project     |–  1     |    |–  2     |    |    |–  3    |    |    |    |– owen.py     |–  A     |    |–  test.py    |    |–  B    |    |    |–  C    |    |    |    |– et.py 说明:owen.py是class A(): et.py继承class B(A);    test.py通过et.py调用ow

紫外线胶加盖板封装智能卡用CPU模块的方法

本发明提供了一种用UV胶加盖板封装智能卡用CPU模块的方法.即在经贴片.焊线后的载带上用国产UV胶在每个器件上涂没一层,将载带上的芯片.金丝及其空隙包封填没,然后再加盖一块厚0.06mm,直径6.5mm的玻璃纤维,经过UV灯的照射,固化成型,起到了保护芯片和金丝的作用,实现电路封装.运用本发明的UV胶加盖板封装工艺的方法后,提高了被封装的CPU模块合格率,与同类技术相比较降低了成本,封装外形稳定,封装厚度一致,并能承受比较高的压力. 1.一种UV胶加盖板封装智能卡用CPU模块方法,其特征在于,所