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

(0)

相关推荐

  • destoon实现调用当前栏目分类及子分类和三级分类的方法

    调用当前栏目分类及子分类和三级分类是程序设计里常用的方法,本文就来详细讲述destoon实现调用当前栏目分类及子分类和三级分类的方法.具体操作如下: 在destoon中提供了如下的调用语句: 一级分类名: {$m[catname]} 二级分类名: {$c[catname]} 三级分类名: {$b[catname]} 具体调用示例如下: 一.直接调用分类名称和链接: {loop $maincat $i $m}<dl> {php $child = get_maincat($maincat, $CA

  • destoon安全设置中需要设置可写权限的目录及文件

    以destoonV4.0系统为例: about/ announce/ file/ config.inc.php index.html 以上目录或文件必须正确设置可写权限,且设置目录可写时,必须包含所有子目录及子文件,否则可能引起系统功能无法正常使用. 安装目录install在完成安装之后,系统会尝试销毁安装文件,但可能因为权限文件而无法销毁,建议ftp删除install目录. 升级目录upgrade在完成升级之后,系统会尝试销毁升级文件,但可能因为权限问题而无法销毁,建议ftp删除upgrade

  • destoon设置自定义搜索的方法

    第一步: 在include/global.fun.php中加入两个函数 函数一: function loseSpace($pcon){ $pcon = preg_replace("/ /","",$pcon); $pcon = preg_replace("/ /","",$pcon); $pcon = preg_replace("/ /","",$pcon); $pcon = preg_

  • destoon整合ucenter后注册页面不跳转的解决方法

    通常采用ucenter来做中介,添加多个应用然后使多个站点有同步登录退出的功能. ucenter添加应用并不难,destoon官网上也有相关的教程. 但是很多朋友在几个应用添加完毕以后,注册一个帐号测试的时候,问题就出现了,注册完以后,注册页面没有跳转,也没有提示,但这个会员是注册成功了.为什么没有跳转呢? 经过断点测试发现这是因为在Destoon的api/ucenter/control/user.php 文件中的第83行有一个写Dscuz系统数据库的函数在默认执行:function onreg

  • destoon实现公司新闻详细页添加评论功能的方法

    本文讲述了destoon实现公司新闻详细页添加评论功能的方法,具体步骤如下: 首先找到相应的页面: template\default\homepage\new.htm   在对应的地方添加如下代码: {if $could_comment && in_array($moduleid, explode(',', $EXT['comment_module']))} <div id="comment_div" style="display:;">

  • destoon实现资讯信息前面调用它所属分类的方法

    有时候我们需要在一些信息前面添加他所属的分类,让他显示出来,本文介绍的方法虽然有些不具有通用性,但是可以实现这一效果,代码如下,供大家参考: <!--{php $tags=tag("moduleid=21&condition=status=3 and catid IN(263,264,249,327,11,598,599,12,238,237,265,285,328,567,570) and level=6&showcat=1&areaid=$cityid&

  • destoon调用自定义模板及样式的公告栏

    destoon中默认的首页公告栏调用方法如下: 复制代码 代码如下: <!–{tag("table=announce&condition=totime=0 or totime>$today_endtime-86400&areaid=$cityid&pagesize=3&datetype=2&order=listorder desc,addtime desc&target=_blank")}–> 这个标签引用的模板文件是t

  • destoon实现首页显示供应、企业、资讯条数的方法

    destoon实现首页显示供应.企业.资讯条数有多种方法,这里介绍的是直接调用php程序代码进行查询.destoon的模板里面是支持php的代码的,因此我们可以直接在模板里面查询出来即可. 实现代码如下: <ul> {php $sellcount=$db->get_one("SELECT COUNT(*) AS num FROM ".$DT_PRE."sell WHERE status=3");} <li>共有{$sellcount[n

  • destoon数据库表说明汇总

    destoon数据库表说明汇总如下,供二次开发人员查询: 表名  注释 destoon_404 404 日志 destoon_ad 广告 destoon_ad_place 广告位 destoon_admin 管理员 destoon_admin_log 管理日志 destoon_alert 贸易提醒 destoon_announce 公告 destoon_area 地区 destoon_article_21 资讯 destoon_article_data_21 资讯内容 destoon_ask 客

  • destoon实现调用热门关键字的方法

    本文所述的destoon调用热门关键字的方法是根据数据库里面的保存的搜索的关键字来显示的. 每个模块下面都有各自的关键字 下面是调用的标签: <!--{tag("moduleid=$searchid&table=keyword&condition=moduleid=$searchid and status=3&pagesize=9&order=total_search desc&template=index-keyword")}-->

  • destoon实现商铺管理主页设置增加新菜单的方法

    1.打开/lang/zh-cn/home.inc.php,找到9,10行替换如下: $HMENU = $DMENU = array('公司介绍', '供应产品', '采购清单', '新闻中心', '荣誉资质', '人才招聘', '联系方式', '公司相册', '招商代理', '品牌展示', '公司视频', '友情链接', '自定义页', '新菜单'); $MFILE = array('introduce', 'sell', 'buy', 'news', 'credit', 'job', 'con

  • destoon整合UCenter图文教程

    1.首先登录UCenter管理中心 添加应用 2.填写完毕后,点提交,将页面滚动至底部 复制其中的Ucenter配置信息至记事本 注意图中的数据表前缀和API地址 80%以上的整合失败是因为这两个参数填写错误导致的 3.进入Destoon管理后台 -> 会员管理 -> 模块设置 -> 会员整合 填写相关参数 提交即可整合成功 通常情况下UC提示通信成功可能不等于整合成功 如果DZ里登陆退出不能和Destoon同步,可能是DZ跳转过快导致,可按下图调整跳转时间

随机推荐