WHMCS 自带是没有用户登陆邮件提示的,但是这个功能非常的有用。

虽然说 WHMCS 自带并没有这类现成的功能,但是 WHMCS 提供了发邮件 API 和 Hook,我们完全可以自己实现这样的一个小功能。实现方法也很简单,下面就看看我写好的现成的例子吧。
源码下载
Gay Hub: https://github.com/babytomas/WHMCS-Login-Email ← 欢迎 Fork
使用教程
1、首先按照目录把 hook_LoginEmail.php 放到 WHMCS 的 includes/hooks 下
2、在 WHMCS 后台新建一个常规邮件模板,名字叫 “Login Prompt”:

邮件里面的内容你当然是可以随便写的,例如:

3、退出管理员账户登陆客户中心试试可否发信吧。
小结
我这里面用读数据库的方式获取 WHMCS 管理员登录名,
肯定会有人说:“小蒋,你这个样子、每次用户登陆都要读取数据库一次,那岂不是效率很低吗?”
其实我想说,本身 WHMCS 效率就好低了 .... 所以还考虑什么效率高低 。。。。
如果你实在介意所谓的效率问题,那么你可以这样写:
03 |
* @author Tomas <mail@cheuknang.cn> |
04 |
* @link https://www.zntec.cn/ |
08 |
if (!defined( "WHMCS" )){ |
09 |
die ( "This file cannot be accessed directly" ); |
12 |
add_hook( 'ClientLogin' , 1, function ( $vars ){ |
13 |
if ( $_SESSION [ 'adminid' ] == false) { |
14 |
$command = "sendemail" ; |
15 |
$values [ "messagename" ] = "Login Prompt" ; |
16 |
$values [ "id" ] = $vars [ 'userid' ]; |
18 |
localAPI( $command , $values , "你的后台账户名" ); |