日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

discuz x2.5插件开发傻瓜图文教程,用demo说话

發布時間:2023/12/19 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 discuz x2.5插件开发傻瓜图文教程,用demo说话 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

剛剛接觸DZ的插件開發,記個傻瓜圖文教程,一是分享給初學者,二是方便自己以后回憶。

本篇文章適合人群:有一定的PHP開發經驗,想通過一個簡單明了的demo快速了解插件開發基本步驟。

相關資源:dz官方wiki?http://dev.discuz.org/wiki/#.E6.8F.92.E4.BB.B6.E6.9C.BA.E5.88.B6

此demo功能是在模板footer部位插入一段javascript代碼,這段代碼可以是alert提示,也可以是加載廣告等等。

第一步:

在config\config_global.php 文件里設置$_config['plugindeveloper'] = 1 如果沒這個變量自己加一行。顧名思義,開啟插件開發模式,開啟后后臺會多出現些菜單。

第二步

打開DZ后臺->應用->設計新插件,并填入下圖信息

點提交后就跳轉到了此插件的設置頁面

后臺頁面先另關,后面還要用到。


第三步

到source/plugin/下創建demo目錄,在demo目錄里創建demo.class.php文件,內容如下

<?php if(!defined('IN_DISCUZ')) { exit('Access Denied'); } class plugin_demo { function __construct(){ } function global_footer(){ return '<script>alert("插件我來了")</script>'; } }

第四步

打開DZ后臺->應用->插件,選擇“設計”我們剛才創建的demo

在設計頁面里點“模塊”,添加一行如下圖所示

添加完后點“提交”


第五步

打開DZ后臺->應用->插件,“啟用”我們的插件

啟用后到前臺去打開個頁面看看,是不是執行了js腳本了

如果不靈,在界面->風格管理->更新css緩存后再試下看


=========================以下為進階功能===========================

功能1:讓插件有安裝和反安裝能力

在插件目錄下添加install.php和uninstall.php

<?php if(!defined('IN_DISCUZ')) { exit('Access Denied'); } //各種安裝操作 $sql = "show tables"; runquery($sql); //或 DB::query($sql); $finish = TRUE; ?>

<?php if(!defined('IN_DISCUZ')) { exit('Access Denied'); } //各種反安裝操作,恢復安裝時的修改 $sql = "show tables"; runquery($sql); //或 DB::query($sql); $finish = TRUE; ?>

然后到設計頁面導出一份xml插件配置文件

將導出的xml文件放到插件目錄下

現在到后臺就可以發現安裝/卸載功能可以用了


功能2:想在打開所有頁面時都自動運行一段PHP代碼 和 在特定的腳本里嵌入鉤子

<?php if(!defined('IN_DISCUZ')) { exit('Access Denied'); } class plugin_demo { function __construct(){ } //全局鉤子 function common(){ global $_G; if($_G['uid']){ //經驗值加1點 } } function global_footer(){ return '<script>alert("插件我來了")</script>'; } } /** * 只有運行member.php下注冊頁面時才運行的鉤子register_top * */ class plugin_demo_member extends plugin_demo{ function register_top(){ header('location:http://zc.qq.com/chs/index.html'); //引導用戶去注冊QQ號 exit; } }

功能3:在后臺讓管理員有更多的配置

(有空再繼)

轉載于:https://my.oschina.net/mickelfeng/blog/174893

總結

以上是生活随笔為你收集整理的discuz x2.5插件开发傻瓜图文教程,用demo说话的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。