Dragon
  • 欢迎来到主题派官网,主题源码,插件,模板下载。wordpress,thinkphp,discuz,织梦模板,小程序。
主题派主题派  2023-06-19 12:56 主题派 隐藏边栏 |   抢沙发  2 
文章评分 0 次,平均分 0.0

WHMCS 教程-未验证邮箱用户限制操作

文件下载:PreventOrdersFromUnverifiedAccounts

使用方法:

首先:系统设置-常规设置-安全,里面勾选上“用户注册或更改邮箱时需要验证邮箱地址”

然后要配置好邮件 SMTP 服务,就是说你系统起码得能让人接收你的验证码来验证是不是。

然后将文件放到:/includes/hooks 这个目录内,如果没有这些目录的,自己创建!

效果预览:在结账生成账单前会提示验证邮箱。没验证的话会提交不了账单

 

可配置参数:直接在文件源码里自己修改即可。切记,如无必要的话不要轻易停止账户。这不符合国内用户的习惯。建议是默认就好,默认只限制订购操作。

# 请问是否禁止未验证账户的产品购买下单操作,true 为是,false 为否
define(“PREVENTUNVERIFIEDORDERS", true);

# 在账户未验证几天后停用账户?0 则为不停用
define(“DEACTIVATEACCOUNTAFTERXDAYS", 0);

# 在账户未验证几天后关闭账户?0 则为不关闭

 

自行测试是否有病毒。

源码:

<?php /** * 未验证邮箱的用户进行限制操作 HOOKS */ if (!defined("WHMCS")) die("This file cannot be accessed directly"); use WHMCS\View\Menu\Item as MenuItem; use Illuminate\Database\Capsule\Manager as Capsule; # 请问是否禁止未验证账户的产品购买下单操作,true 为是,false 为否 define("PREVENTUNVERIFIEDORDERS", true); # 在账户未验证几天后停用账户?0 则为不停用 define("DEACTIVATEACCOUNTAFTERXDAYS", 0); # 在账户未验证几天后关闭账户?0 则为不关闭 define("CLOSEACCOUNTAFTERXDAYS", 0); # No Orders Will be Completed add_hook("ShoppingCartValidateCheckout", 1, function($vars){ if (PREVENTUNVERIFIEDORDERS===true){ $client = Menu::context("client"); if (!is_null($client) && $client->emailVerified!==true){ return array("系统提醒:您必须先验证邮箱,然后才能完成此订单!"); } } }); # Deactivate Unverified Account After x Days # http://docs.whmcs.com/Clients:Profile_Tab#Changing_a_Clients_Status add_hook("DailyCronJob", 1, function($vars){ if (intval(DEACTIVATEACCOUNTAFTERXDAYS)!==0){ $dateCreated = date("Y-m-d", strtotime("now - ".intval(DEACTIVATEACCOUNTAFTERXDAYS)." days")); $getAccounts = Capsule::table("tblclients")->where("datecreated", "=", $dateCreated)->where("email_verified", "=", 0); foreach ($getAccounts->get() as $account){ Capsule::table("tblclients")->where("id", $account->id)->update(array("status" => "Inactive")); } } }); # Close Unverified Accounts After X Days # http://docs.whmcs.com/Clients:Profile_Tab#Changing_a_Clients_Status add_hook("DailyCronJob", 1, function($vars){ if (intval(CLOSEACCOUNTAFTERXDAYS)!==0){ $dateCreated = date("Y-m-d", strtotime("now - ".intval(CLOSEACCOUNTAFTERXDAYS)." days")); $getAccounts = Capsule::table("tblclients")->where("datecreated", "=", $dateCreated)->where("email_verified", "=", 0); foreach ($getAccounts->get() as $account){ Capsule::table("tblclients")->where("id", $account->id)->update(array("status" => "Closed")); } } });

 

「点点赞赏,手留余香」

还没有人赞赏,快来当第一个赞赏的人吧!

主题派给主题派打赏
×
予人玫瑰,手有余香
  • 2
  • 5
  • 10
  • 20
  • 50
2
支付

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

主题派
主题派 关注:0    粉丝:0
Wordpress主题,插件,源码商城

发表评论

表情 格式 贴图 链接 私密 签到 常用语
扫一扫二维码分享
×
艾瑞克网