1. 程式人生 > >destoon 新建一個新模組

destoon 新建一個新模組

用destoon 作為二次開發的小夥伴,可能會遇到destoon的模組不夠用的情況,於是想自己自定義新建一個新模組,下面就讓我新建一個模組:

我們一文章(article)模組為例新建一個rename模組:

1、在module模組下複製一個article資料夾,重名為rename,找到rename\admin\config.inc.php 檔案,開啟後修改文字內容,將其檔案下的所有“文章”替換為“新模組”

<?php
defined('DT_ADMIN') or exit('Access Denied');
$MCFG['module'] = 'article'; //修改為rename
$MCFG['name'] = '新模組

';  //將"文章"全部替換為"新模組"
$MCFG['author'] = 'DESTOON.COM';
$MCFG['homepage'] = 'www.destoon.com';
$MCFG['copy'] = true;//修改為false
$MCFG['uninstall'] = true;
$MCFG['moduleid'] = 0;//修改為100


$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;
?>

2、在同目錄下的html.inc.php檔案大概65~70行,將所有的“article”全部替換為“rename”

if($update) {
require MD_ROOT.'/article.class.php';//修改為“rename”
$do = new article($moduleid);//修改為“rename”
}

3、在同目錄下的index.inc.php檔案大概在3行,將所有的“article”全部替換為“rename”

defined('DT_ADMIN') or exit('Access Denied');
require MD_ROOT.'/rename.class.php';
$do = new rename($moduleid);

4、在moudle檔案下找到 rename\article.class.php,並將所有的article全部替換為“rename”,而且還要將article.class.php檔案重新命名為rename.class.php

5、在moudle檔案下找到 rename\my.inc.php,並將所有的article全部替換為“rename”。

6、在模板檔案中複製brand資料夾(預設在template\brand),使其重新命名為rename,然後在template\member資料夾中找到my_article.php,複製貼上,使其重命為my_rename.php。

7、在根目錄下找到一個lang\zh-ch\article.inc.php,複製貼上一份使其重新命名為rename.inc.php(語言包)

8、登入後臺--》系統維護》模組管理》新增模組

模組目錄填寫“新模組”,所屬模型:下來選擇我們自定義的“新模組”,安裝目錄就寫"rename",點選確定後更新快取。

9、複製destoon_article_21和的destoon_article_data_21資料表並重名為destoon_rename_100,destoon_rename_data_100,

10、增加了新的模組後,如果使用tag的標籤來呼叫,會出現呼叫的表格不對的情況,所以要在global.func.php中加入新的模組

  1. function get_table($moduleid$data = 0) {  
  2.     global$DT_PRE$MODULE;  
  3.     $module = $MODULE[$moduleid]['module'];  
  4.     $C = array('article''brand''buy''down''info''photo''sell''video','rename','xxxxxx','xxxxx');  
  5.     if($data) {  
  6.         return in_array($module$C) ? $DT_PRE.$module.'_data_'.$moduleid : $DT_PRE.$module.'_data';  
  7.     } else {  
  8.         return in_array($module$C) ? $DT_PRE.$module.'_'.$moduleid : $DT_PRE.$module;  
  9.     }  
  10. }