php开发discuz插件,discuz x3插件开发傻瓜图文教程,用demo说话
此demo功能是在模板footer部位插入一段javascript代碼,這段代碼可以是alert提示,也可以是加載廣告等等。
第一步:
在config\config_global.php 文件里設置$_config['plugindeveloper'] = 1 如果沒這個變量自己加一行。顧名思義,開啟插件開發模式,開啟后后臺會多出現些菜單。
第二步
打開DZ后臺->應用->設計新插件,并填入下圖信息
點提交后就跳轉到了此插件的設置頁面
后臺頁面先另關,后面還要用到。
第三步
到source/plugin/下創建demo目錄,在demo目錄里創建demo.class.php文件,內容如下
if(!defined('IN_DISCUZ'))?{
exit('Access?Denied');
}
classplugin_demo?{
function__construct(){
}
functionglobal_footer(){
return'';
}
}
?>
第四步
打開DZ后臺->應用->插件,選擇“設計”我們剛才創建的demo
在設計頁面里點“模塊”,添加一行如下圖所示
添加完后點“提交”
第五步
打開DZ后臺->應用->插件,“啟用”我們的插件
啟用后到前臺去打開個頁面看看,是不是執行了js腳本了
如果不靈,在界面->風格管理->更新css緩存后再試下看
=========================以下為進階功能===========================
功能1:讓插件有安裝和反安裝能力
在插件目錄下添加install.php和uninstall.php
if(!defined('IN_DISCUZ'))?{
exit('Access?Denied');
}
//各種安裝操作
$sql="show?tables";
runquery($sql);
//或
DB::query($sql);
$finish=?TRUE;
?>
if(!defined('IN_DISCUZ'))?{
exit('Access?Denied');
}
//各種反安裝操作,恢復安裝時的修改
$sql="show?tables";
runquery($sql);
//或
DB::query($sql);
$finish=?TRUE;
?>
然后到設計頁面導出一份xml插件配置文件
將導出的xml文件放到插件目錄下
現在到后臺就可以發現安裝/卸載功能可以用了
功能2:想在打開所有頁面時都自動運行一段PHP代碼 和 在特定的腳本里嵌入鉤子
if(!defined('IN_DISCUZ'))?{
exit('Access?Denied');
}
classplugin_demo?{
function__construct(){
}
//全局鉤子
functioncommon(){
global$_G;
if($_G['uid']){
//經驗值加1點
}
}
functionglobal_footer(){
return'';
}
}
/**
*?只有運行member.php下注冊頁面時才運行的鉤子register_top
*
*/
classplugin_demo_memberextendsplugin_demo{
functionregister_top(){
header('location:http://zc.qq.com/chs/index.html');?//引導用戶去注冊QQ號
exit;
}
}
總結
以上是生活随笔為你收集整理的php开发discuz插件,discuz x3插件开发傻瓜图文教程,用demo说话的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js正则大于0小于100_js正则表达式
- 下一篇: 子类初始化列表不能初始化父类元素 --