1.如何保证主题被回复时业务代码被执行. 2.获得主题,主题发布者,贴子等信息. 3.discuz发送email邮件.   discuz使用嵌入点(钩子)来处理代码的执行时机. 当用户开启插件开发者模式时,页面上会输出提供好的预先定义的嵌入点.   例如:我们需要在用户发贴时,告知用户是否开启了回贴通知. 1.我们在插件后台添加页面嵌入 2.在插件目录下创建noticeme.class.php文件 该文件为类文件,定义该插件的嵌入类,该类中的方法就是嵌入点中的钩子方法. 嵌入类:1.全局嵌入类,…
一.完善用户是否开启回贴通知 回贴通知插件建立模块时,指定了核心文件post_set.inc.php   1.创立好数据库 建立独立数据表(不建议直接修改原有的discuz数据库,防止discuz升级后数据库发生变化),来保存是否开启回贴通知. create table 前缀_模块_逻辑表名 ( `uid` mediumint(8) unsigned NOT NULL, `isnotice` tinyint not null default 0 comment '0关闭,1开启', primar…
//自定义钩子函数,命名:模块_函数名_output()或模块_函数名() //一个是模块执行完,模板输出前执行.一个是模块执行前 //post_reply_output函数会在所有post操作中都会执行,通过$params['message']来区别 public function post_reply_output($params) { global $_G; //判断是否为主题回复成功时 if($params['message'] != 'post_reply_succeed') { re…
如果涉及到页面的展示,模板,提示信息,通常会   1.建立好需要的文字的翻译 在disucz的data/plugindata目录创建一个插件所使用的语言文件,命名方式为: 插件标识符.lang.php,如post_notice.lang.php <?php //判断是否被常规请求 defined('IN_DISCUZ') or die('Access Denied'); //程序脚本中使用的翻译 $scriptlang['post_notice'] = array( 'set_success'…
Django自带后台管理的配置 创建项目和应用 修改配置文件 数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mydb',#选择数据库的名,请确认你的mysql中有这个库 'USER': 'root', 'PASSWORD': '123456', 'HOST': 'localhost', 'PORT': '3306', } } 应用配置 INSTALLED_APPS = [ 'djan…
1.登出discuz后台,再次设计插件 2.使用变量    …
1.获取用户提交数据 discuz通过$_GET来获取全部数据,包括($_GET,$_POST). else if($_GET['pluginop'] == 'set') { //获取用户提交数据 $isNotice = $_GET['isNotice']; $mForumPostNotice = C::t('#post_notice#forum_post_notice'); if($mForumPostNotice->updNoticeState($_G['uid'], $isNotice))…
通过discuz的sendmail()来发送邮件 //引入发送邮件的函数文件 include libfile('function/mail'); //设置收件人地址,标题,内容发送邮件 sendmail($email, $subject, $body);…
添加smtp服务器,填写相应的smtp服务器,发信人地址,用户名和密码.   填写发件人地址和收件人地址来测试邮件是否发送成功.…
## Discuz!快速对接个人支付插件 由于近期准备使用老牌论坛程序Discuz建立一个交流社区分享一些资源,但是测试了各种支付方式都不满意,偶然发现一个简直不要太完美的解决方案.今天抽时间搭建好并且测试了一下,写个文章分享出来供大家查阅. #### 0.安装Discuz!这一步基本上属于废话了,但是首先你得要有一个社区不是?我用的是Discuz!X3.4版本,插件可以完美支持,顺道测试了一下X3.3也是完美支持的.所以说首先要看一下自己的程序版本. #### 1.开通支付账号PayJS微信个…