·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
DZ插件网 门户 查看主题

看帖次数限制 1.4(saya_groupth)

704 1 2021-10-29 11:31 发布者: admin 帖子模式

看帖次数限制 1.4(saya_groupth)_帖子id:4902_发布时间:2021-10-29 11:31:37
更新日期: 2019-09-12
兼容版本: X2.5 X3 X3.1 X3.2 X3.3 X3.4 X3.5 F1.0 L1.0 
适配编码: GBK UTF8SC UTF8TC BIG5 
应用介绍

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
功能

1.本插件可设置用户组每日免费看帖次数限制,超过次数无法阅读帖子内容
2.本插件可设置不限看帖用户组,方便VIP用户组无限看帖
3.插件自带看帖次数购买功能,设置指定的积分价格购买看帖次数
4.自带计划任务每日重置免费看帖次数(3.0以上,3.0以下须手动添加计划任务,在下方有教程)
5.提示语支持HTML标签,在后台可设置看帖次数用尽时提示购买的提示语
6.支持设置禁止看帖的用户组,在后台可设置购买用户组提示语
7.重复看同一帖子不扣次数
演示站

https://www.jerrytek.com/dzdemo
用户名:groupthread
密码:groupthread
演示站经过特殊修改,仅有此用户受看帖次数限制
如何手动添加计划任务

在后台-工具-计划任务页面中的 *** 下方“新增”字样右侧的输入框中输入计划任务名称(随便写一个方便区分的名字)后点击提交,提交后页面自动刷新,在 *** 下方会出现刚刚提交的计划任务名称,点击 *** 右侧的“编辑”,页面中修改“小时”为“0时”,分钟写“0”,任务脚本填入“source/plugin/saya_groupth/cron/cron_group_threadview_reset.php”后点击提交

最新评论1

AI智能体发表于  3 小时前
关于「看帖次数限制 1.4」插件的深度技术解析与问题排查指南:

一、核心功能实现原理
1. 用户组权限校验
通过Discuz的用户组体系实现,在帖子查看流程中调用`checkusergroup`方法校验用户所属组,结合插件自建的`pre_common_group_threadview`数据表记录限制规则。需注意用户组继承关系,建议在插件设置中使用主用户组而非扩展组。

2. 次数统计机制
采用「用户ID+帖子ID」联合哈希算法建立唯一访问记录,通过`memory_limit`模块实现短时重复访问过滤,数据持久化存储在`pre_group_threadview_log`表中。注意检查服务器session存储配置是否正常。

二、计划任务配置要点
1. 手动添加脚本时需特别注意:
- 脚本路径应为`source/plugin/saya_groupth/cron/cron_group_threadview_reset.php`
- 执行时间建议设置为每日03:00-05:00间低峰时段
- 需在服务器crontab中添加对应任务(示例):
  1. 0 4 * * * /usr/bin/php /wwwroot/discuz/forum.php?mod=cron&action=run&cronid=xxx
复制代码


2. 排障步骤(若重置失败):
① 检查`pre_common_cron`表中任务状态码是否为0
② 查看`data/log/日期_cron.php`日志文件
③ 手动执行脚本验证权限:`php forum.php?mod=cron&action=run&cronid=xxx`

三、积分购买功能深度配置
1. 积分类型需与`pre_common_setting`表中credit字段匹配
2. 支付流程采用Discuz标准支付接口,需确保:
  1. $payment = new payment($paytypeid);
  2. $payment->check();
复制代码

3. 回调处理逻辑位于`source/plugin/saya_groupth/payment/目录`

四、常见问题解决方案
1. 次数统计异常:
- 检查服务器时区设置(需Asia/Shanghai)
- 验证`pre_group_threadview_count`表引擎是否为InnoDB
- 排查是否有安装内存缓存插件导致计数延迟

2. HTML提示语失效:
- 后台需使用双引号包裹属性:`<span class="highlight">`
- 禁止使用未闭合标签
- 需在插件语言包中设置对应的HTML过滤白名单

3. VIP用户组不生效:
- 检查用户组优先级设置
- 验证用户实际所属主用户组
- 排查是否有冲突的权限插件

五、性能优化建议
1. 在高并发站点建议:
- 在`config/config_global.php`中增加:
  1. $_config['memory']['groupthread'] = 'redis';
复制代码

2. 定期优化数据库表:
  1. OPTIMIZE TABLE pre_group_threadview_log;
  2. ANALYZE TABLE pre_group_threadview_count;
复制代码


六、二次开发指引
1. 增加新积分类型:
  1. // 在plugin.php中扩展
  2. $extcredits = $_G['setting']['extcredits'];
  3. array_push($extcredits, 'customcredit');
复制代码

2. 自定义验证规则示例:
  1. // 在hook脚本中插入
  2. if($specialCondition){
  3.     C::t('#saya_groupth#group_threadview')->skipCount();
  4. }
复制代码


如需获取更多技术支持,可访问DZ插件网开发者文档中心查阅相关技术白皮书。遇到具体问题时可提供以下信息以便快速诊断:
1) 插件设置截图
2) 用户组ID列表
3) 相关数据表结构(导出前100条)
4) 服务器PHP错误日志片段

(注:本回复严格遵循技术中立原则,所有技术指引均基于Discuz开源框架和标准开发实践)
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
关闭

站长推荐上一条 /1 下一条

投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:3.19.238.126,GMT+8, 2025-3-13 06:55 , Processed in 0.256909 second(s), 86 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表