1. 程式人生 > >(DIY二次開發)門戶下面diy模組全能調取資料

(DIY二次開發)門戶下面diy模組全能調取資料

模組開發一定要遵循discuz的規則,按照它規定的一些規則走:

discuz的所有的模組全部在:source/class/block 中,看下對應的檔案就明白了

這個時候差不多明白一點了吧!

下面咱們在其它類中自定義一個咱們自己的吧

我現在other目錄中新建一個block_othernew.php 檔案 必須為block_(自定義的名稱).php這種格式

其實你在新建一個檔案也是可以的 ,可以參考other檔案下面的檔案,必須存在blockclass.php 這個檔案,這個檔案:

$blockclass = array(

'name' => lang('blockclass', 'blockclass_other'),//裡面定義的就是語言包,就死上圖中的 其他類,可以找下語言包中的這個欄位,看下就明白了。

);

接著block_othernew.php 

if(!defined('IN_DISCUZ')) {

exit('Access Denied');

}

class block_othernew extends discuz_block {

function block_otherstat() {}

//模組名稱 模組分類

function name() {

return "自己模組";

}

function blockclass(){

//othernew 模組總分類

return array('othernew', "模組殺手");

}

    //這個模組要返回的欄位

function fields() {

return array(

'posts' => array('name' => lang('blockclass', 'blockclass_other_stat_posts'), 'formtype' => 'text', 'datatype' => 'int'),

'posts_title' => array('name' => lang('blockclass', 'blockclass_other_stat_posts_title'), 'formtype' => 'text', 'datatype' => 'string'),

);

}

//設定需要帥選的引數 然後引數會自動傳給  etdata($style, $parameter)

function getsetting() {

global $_G;

$settings = array(

'titlelength' => array(

'title' => '傻了吧唧',

'type' => 'text',

'default' => ""

)

);

return $settings;

}

        //返回資料的函式,自己發揮吧,一定要保證你返回的欄位 在上個 fields 函式裡面要有

function getdata($style, $parameter) {

global $_G;

$parameter = $this->cookparameter($parameter);

$fields = array(

'posts' => 0,

'posts_title' => !empty($parameter['posts_title']) ? $parameter['posts_title'] : lang('block/stat', 'stat_posts'),

);

if(in_array('posts', $parameter['option']) || in_array('bbsnewposts', $parameter['option'])) {

$sql = "SELECT sum(f.posts) AS posts, sum(f.todayposts) AS todayposts FROM ".DB::table('forum_forum')." f WHERE f.status='1'";

$forum = DB::fetch_first($sql);

}

if(in_array('posts', $parameter['option'])) {

$fields['posts'] = intval($forum['posts']);

}

$list = array();

return array('html' => '', 'data' => $list);

}

}

?>

以上類中的函式必須有,缺少一個不可,這是更新一下工具->更新快取-》DIY 模組分類快取 更新一下快取即可,這是去後臺和前臺看下吧有沒有!

要是想要呼叫最好先在後臺為你的模組新增模板

門戶=》模板模組=》新增 ,選中你剛才自定義的模組,點選提交,看下圖:看看裡面的欄位,是不是和你定義的類中fields 函式裡面的欄位是一樣的吧!

新增模板,新增好之後,就可以去DIY了,去試試吧.有時你你可以看下 這個函式,相信你會有收穫,

相關推薦

(DIY開發)門戶下面diy模組全能調取資料

模組開發一定要遵循discuz的規則,按照它規定的一些規則走:discuz的所有的模組全部在:source/class/block 中,看下對應的檔案就明白了這個時候差不多明白一點了吧!下面咱們在其它類中自定義一個咱們自己的吧我現在other目錄中新建一個block_othernew.php 檔案 必須為bl

關於微擎應用開發---微信支付模組

咳咳首先,背景,我要二次開發,增加有償功能業務的,所以要熟悉支付,用的是微信,所以當然是微信支付。 ===================================================== 遵從看程式碼後分析的原則一步一步來。額,我的意思是,先熟悉一個業

Alios-Things之wifi模組開發-(1)搭建Alios-Things開發環境(基於ubuntu 16.0.4)

一、安裝流程如下:     1.先安裝VSCode,保證有個可視的編輯器;      2.然後安裝aos-cube,是編譯工具;      3.最後安裝git工具,下載Alios-Things國內託管倉庫程式

ecshop實現後臺開發後功能模組仍然可以分配許可權

對ec後臺進行二次開發在可以在左面選單欄加入新的功能模組有關如何加入我在之前帖子有說過 今天我們要分析的是功能模組加了以後如何在管理員列表也可以實現管理許可權分配的管理。     首先我們瞭解一下 ecs_admin_action這個表 這個表有3個欄位action_id

PHPCMS V9 模組開發 開發例項 留言本

對於像我這樣的入門者希望先把上面這個文件仔細讀一遍再往下看! 宣告:我用的是GBK版本。 二次開發流程 建立資料庫和資料庫表(無資料庫操作可略過)建立資料模型檔案建立模組目錄開發控制器和模板install和uninstall模組 一、建立資料庫表 具體需求請檢視上面

python操作wps/操作word/操作excle/操作ppt:文件專用模組或者開發

python呼叫wps/呼叫word/呼叫excle/呼叫ppt 在實際應用中,我們經常需要接觸一些日常的檔案,比如word(.doc/.docx)、excle(et)、ppt(.ppt/.pptx)。而python又是你掌握的程式語言,這個時候,你有以下兩種選擇: 方法一

dedecms開發:dedetemplate.class.php 動態模板類

filename 外部 運行 mpi public esc val net color dedecms二次開發目錄點這個:dedecms二次開發教程目錄 核心類文件 include/dedetemplate.class.php 用途:用於非核心模塊的動態頁面或列表頁的模板解

VB.Net實現下CATIA開發方法

ror 點擊 doc struct cat inf 定義 then ports 源自網絡。 在visual studio(vb,c#,c++)下使用CATIA進行二次開發有如下特點: -->需要引用CATIA的對象庫 -->需要對象聲明(visua

呼叫中心系統OA開發

清單 二次開發 工作 註意 分辨率 傳真 新增 歷史 有效 1. 既有修改 分辨率顯示自適應調整 工作流數據調整 2. 呼叫中心 語音電話 l 新建任務 字段:任務主題、語音主題、提

(6)微信開發 之 微信文本消息接口實現

微信 odin link 消息處理 nal puts 算法 帳號 接口實現 p.p1 { margin: 13.0px 0.0px 13.0px 0.0px; text-align: justify; font: 16.0px SimSun } p.p2 { margin:

學習 MeteoInfo開發教程(一)

mat 沒有 組件 資源管理 img 教程 layer 添加 bbs 來自氣象家園:http://bbs.06climate.com/forum.php?mod=viewthread&tid=6631 按照教程,沒有太大問題,有些是對c#操作不熟悉導致。 1.添加d

學習 MeteoInfo開發教程(三)

開發教程 cnblogs false raw class .dll dll inf legend 1.breakList的問題 ((PolygonBreak) aLS.breakList[0]).DrawFill=false; 新的類庫將LegendScheme的brea

學習 MeteoInfo開發教程(四)

手動添加 map dem itl 數控 nas 字號 south title 教程四的問題不大。 1.private void AddMapFrame_ChinaSouthSea()、private void AddTitle()兩個函數和public Form1()函數並

Revit開發--Hello World

man dem users att try encoding cli 引用 類庫 部署完開發環境,就要進行每次學習新的技能,必寫的Hello World。 1、打開VS開發環境,新建一個項目類庫RevitDemo。 2、修改Class1名稱為Command。 3、在引

GTS-800開發基本流程總結

win highlight line names 關閉 參數 ble 名稱 速度 1、打開控制器         GT_Open 2、啟動伺服使能        GT_ClrSts 3、軸規劃位置清零       GT_SetPrfPos 4、軸運動模式        

AE開發,解決子窗體使用父窗體的AxControl控件

控件 con pri apc sha item object new end 在子窗體寫構造函數,然後再在父窗體按鈕點擊事件下寫 public frmIDW(AxMapControl axMapControl1) { Initia

學習MeteoInfo開發教程(十

odi 資源 level 無法訪問 .cn oid pub images bsp 1.添加新的Form窗體: 在解決方案資源管理器中,右鍵MeteoInfoDemo,“添加”,“Windows 窗體” 2.新窗體中添加好layersLegend1和Layout之後,要把la

一個星期實現開發,解決很多用戶無法解決的問題

解決方案 版本號 臨時性 開發 用戶 最近,收到一個用戶的體驗分享,他用一個星期完成對H3的從陌生到基本熟悉,再從基本屬性到基本二次自定義開發,對於他對我我們H3的支持,我們表示感謝~~以下是對該用戶的實例分享整理。-------------------------------------

java代碼生成器 快速開發平臺 開發 外包項目利器 springmvc SSM後臺框架源碼

java 下拉聯動 頭像裁剪 圖片裁剪 springmvc A 調用攝像頭拍照,自定義裁剪編輯頭像,頭像圖片色度調節 B 集成代碼生成器 [正反雙向](單表、主表、明細表、樹形表,快速開發利器)+快速表單構建器 freemaker模版技術 ,0個代碼不用寫,生成完整的一個模塊,帶

QGIS(PYTHON3.5、QT5.7.1、QGIS3)系列開發環境

qgis c++ python 二次開發 QGIS(PYTHON3.5、QT5.7.1、QGIS3系列二次開發環境,所有環境以虛擬機方式提供,以便研究或直接使用。 具體包括:獨立應用二次開發環境(WINDOWS,LINUX);android二次開發;獨立應用PYTHON二次開發環境(WI