在使用Dedecms搭建网站时,如果启用了会员功能,可能会面临被注册机恶意注册账号的问题。尽管系统设置了待审核机制,但频繁删除这些投稿仍然是一件令人头疼的事情。为了解决这一问题,可以通过限制会员每天的投稿数量来有效控制这种情况的发生。

以下是一段经过验证有效的代码,可以帮助您实现对会员每日投稿数量的限制。此方法已经在本地环境中测试成功,并且得到了其他用户的好评。如果您也有类似需求,不妨尝试一下。

第一步: 打开文件 member/article_add.php

第二步: 找到大约第39行处的以下代码:

else if($dopost=="save")
{

第三步: 在 "{" 符号后添加以下代码:


$memberarcnum = $dsql->GetOne("SELECT count(*) FROM `dede_archives` WHERE mid='" . $cfg_ml->M_ID . "' AND FROM_UNIXTIME(senddate, '%Y-%m-%d') = curdate()");
// 判断当前投稿数量是否超过3篇
if ($memberarcnum['count(*)'] > 3) {
    ShowMsg("对不起,您所在会员组每日只可投稿3篇!", "/member/content_list.php?channelid=1");
    exit();
}
    

在上述代码中,$memberarcnum['count(*)'] > 3 的数值 "3" 可以根据您的实际需求进行调整。例如,如果您希望会员每天最多可以发布5条内容,则只需将 "3" 替换为 "5" 即可。

这段代码的主要功能是通过查询数据库,统计当前会员当天已发布的文章数量。如果数量超过了设定值(如3篇),系统会自动提示用户并跳转到指定页面,从而阻止超额投稿的行为。

通过这种方式,您可以有效地减少恶意投稿带来的麻烦,同时确保合法用户的正常使用体验。希望这段代码能够帮助到正在使用Dedecms的您!如果有任何疑问或需要进一步的帮助,请随时联系技术支持团队。