[8133]免签积分赞助充值 手机版 1.0.1(dev8133_integral)
1.更新样式
2.更新未登录显示问题
【dev8133】免签约积分赞助充值,无需申请支付接口即可使用
功能介绍
支持 积分配置
支持 支付方式配置;
支持 积分赠送配置;
支持 用户提交积分赞助充值消息提醒;
支持 用户提交积分赞助充值邮件提醒(注意使用邮件提醒功能,需要自己配置社区邮件发送功能);
支持 前台多管理员审核订单功能;
支持 审核通过消息提醒功能;
注意用户赞助充值积分非实时到账,需要手动审核到账
插件缺少文件或者不完整,不能正常使用,请更新,谢谢! 针对您提到的“免签积分赞助充值手机版”插件更新及功能,以下从技术实现和问题排查角度进行分析:
1. **样式更新问题**:
- 检查模板文件(template/mobile/plugin/插件标识符)中是否新增CSS类名
- 推荐使用Discuz模板继承机制,在插件目录下建立style.css文件
- 使用`<link rel="stylesheet" href="{IMGDIR}/plugin/插件标识符/style.css">`动态加载样式
2. **未登录显示优化**:
- 控制器层应增加权限验证:
if(!$_G['uid']) {
showmessage('not_loggedin', '', array(), array('login' => 1));
}
- 模板层使用条件判断:
<!--{if !$_G['uid']}-->
<div class="login_tip">请先登录</div>
<!--{/if}-->
3. **积分处理流程**:
- 审核通过时应调用核心积分接口:
$status = 2; // 审核通过状态
if($status != $order['status']) {
updatemembercount($order['uid'], array($_G['setting']['creditstrans'] => $order['amount']));
C::t('#dev8133#plugin_order')->update($orderid, array('status' => $status));
}
4. **多管理员审核实现**:
- 在插件安装脚本中创建管理权限组:
$sql = <<<EOF
INSERT INTO pre_common_admingroup VALUES (NULL,'积分审核管理员',0,'plugin|dev8133');
EOF;
runquery($sql);
- 审核时验证权限:
if(!C::t('common_admincp_session')->is_admin($_G['uid'], 'plugin|dev8133')) {
showmessage('无审核权限');
}
5. **消息提醒机制**:
- 使用Discuz消息队列系统:
// 提交提醒
if($_G['setting']['plugin']['dev8133']['submit_notify']) {
notification_add($order['uid'], 'system', '您有新的积分充值待审核');
}
// 审核提醒
notification_add($order['uid'], 'credit', '积分充值已到账', array(
'amount' => $order['amount'],
'credit' => $_G['setting']['extcredits'][$_G['setting']['creditstrans']]['title']
));
6. **常见问题排查指南**:
**Q:支付方式配置不生效?**
A:检查数据存储逻辑:
// 保存配置时应使用
C::t('common_setting')->update_batch(array(
'dev8133_paymethods' => serialize($_GET['paymethods'])
));
// 读取时
unserialize(C::t('common_setting')->fetch('dev8133_paymethods'));
**Q:邮件提醒失败?**
A:建议检查:
1. 后台→站长→邮件设置是否完成SMTP配置
2. 插件中邮件模板是否存在于template/plugin/插件标识符/email/目录
3. 发送逻辑应使用:
include libfile('function/mail');
sendmail($email, $subject, $message);
7. **移动端适配建议**:
- 使用Discuz移动端专用API接口:
if($_G['mobile']) {
include template('dev8133:mobile/order');
} else {
include template('dev8133:pc/order');
}
- 在模板中使用响应式布局:
<div class="comiis_pay_box">
<!--{loop $paymethods $method}-->
<div class="comiis_pay_item" data-type="$method['id']">
<img src="{$method['icon']}">
</div>
<!--{/loop}-->
</div>
如需进一步优化建议或需要查看具体功能实现代码结构,可提供具体问题现象,我将根据Discuz插件开发规范给出针对性解决方案。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页:
[1]