您现在的位置是:首页 > cms教程 > Discuz教程Discuz教程

Discuz!道具系统开发介绍

问筠2025-07-06Discuz教程已有人查阅

导读Discuz!道具系统采用独立的php文件的道具结构,每个道具拥有一个单独的php文件,做为这个道具运行文件,用户可以自行编写道具文件制作属于自己论坛的道具。

Discuz!道具系统采用独立的php文件的道具结构,每个道具拥有一个单独的php文件,做为这个道具运行文件,用户可以自行编写道具文件制作属于自己论坛的道具。下面具体介绍一下相关机制和开发方法
1、 道具的组成
每个道具由两部分组成,php文件和图片文件。
php文件存放在论坛include/magic目录下,命名规范为magic_inc_道具名称.php文件。图片文件存放在images/magics目录下,命名规范为道具唯一标识(小写).gif
注:其中道具名称由任意英文字母组成,道具唯一标识是在添加的时候确定的,此标识唯一,最长为3个大写英文字母道具图片不用多说就是gif文件,下面我具体说说php文件编写规范
2、 道具php文件编写详解
我们以一个道具php文件(magic_inc_close.php)为例
<?php
// 这段代码的作用防止文件直接调用,每个道具文件都必须在开头加入
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
// 用户点击使用后,执行的代码
if(submitcheck('usesubmit')) {
// 验证资料是否填写完全,这里验证$tid(帖子id)是否填写
if(empty($tid)) {
showmessage('magics_info_nonexistence');
}
// 取得帖子的相关资料
$thread = getpostinfo($tid, 'tid', array('fid'));
// 验证帖子所在的版块是否有使用道具的权限
checkmagicperm($magicperm['forum'], $thread['fid']);
// 道具的执行代码
$db->query("UPDATE {$tablepre}threads SET closed='1', moderated='1' WHERE tid='$tid'");
$expiration = $timestamp + 86400;
// 使用道具代码
usemagic($magicid, $magic['num']);
// 记录道具使用日志
updatemagiclog($magicid, '2', '1', '0', $tid);
// 记录道具使用对象(这里指主题)日志
updatemagicthreadlog($tid, $magicid, $magic['identifier'], $expiration);
// 显示道具使用信息
showmessage('magics_operation_succeed', 'magic.php?action=user');
}
// 生成道具界面显示代码
function showmagic() {
global $tid, $lang;
magicshowtype($lang['option'], 'top');
magicshowsetting($lang['target_tid'], 'tid', $tid, 'text');
magicshowtype('', 'bottom');
}
?>
以上就是一个简单道具的编写格式,其中红色注释部分是一个道具必须有的,当然里面的一些代码可以根据道具类型的不同做一些改动,比如取得帖子资料的语句,如果是对用户的操作,可以改为取用户资料。相关这些操作我们已经内置了一些自定义函数,通过这些自定义函数你就可以轻松调用你想调用的资料了,下面我们就来说说这些自定义函数。
3、 道具系统自带函数
所有的自定函数都在include/magic.func.php文件里面,下面我对这些函数一一做解释

本文标签:

很赞哦! ()

相关教程

相关源码

  • (PC+WAP)绿色日志美文文学说说博客网站pbootcms模板除日志博客类网站外,通过替换图文内容可快速适配:心情日记分享平台、文学创作社区、朋友圈内容聚合站、美文鉴赏网站、读书笔记平台等应用场景。查看源码
  • pbootcms模板(PC+WAP)传媒广告影视公司网站源码基于PbootCMS内核开发的全自适应传媒文化网站模板,为影视公司、广告传媒企业打造,同时支持多行业快速适配。通过替换文字图片即可转换为其他行业网站查看源码
  • (自适应响应式)家电维修清晰服务网站pbootcms模板免费下载本模板基于PbootCMS内核开发,为维修服务类企业打造,特别适合家电维修、设备维护等行业使用。通过简洁直观的界面设计,帮助企业快速搭建专业级服务平台,实现线上业务高效管理。查看源码
  • (自适应)调节阀门气动球阀控制阀网站模板源码下载为调节阀门、气动球阀等工业设备企业打造的响应式网站模板,基于PbootCMS系统开发。突出产品参数展示与技术文档管理功能,通过专业化的布局设计有效呈现工业设备特性,适配各类终端访问需求。查看源码
  • (自适应)双语网络电子摄像头设备pbootcms网站模板下载核心功能定位:基于PbootCMS开发的双语摄像头企业官网模板,深度适配产品规格书展示、实时监控演示、解决方案呈现等业务场景,支持中英文内容一键切换。查看源码
  • (自适应响应式)装修装潢设计公司网站源码下载本模板为装修设计企业打造,采用PbootCMS内核开发,整体设计突出空间美学与功能性结合。首页采用大图轮播展示工程案例,服务项目模块支持三维效果展示,呈现装修设计企业的专业形象与技术实力。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐