加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

WordPress中访客登陆实现邮件提醒的PHP脚本实例分享

发布时间:2020-12-13 02:59:53 所属栏目:PHP教程 来源:网络整理
导读:《WordPress中访客登陆实现邮件提醒的PHP脚本实例分享》要点: 本文介绍了WordPress中访客登陆实现邮件提醒的PHP脚本实例分享,希望对您有用。如果有疑问,可以联系我们。 登陆邮件提醒实现方法 前提是空间有邮件功能,测试有无邮件功能的方法:登录界面点击

《WordPress中访客登陆实现邮件提醒的PHP脚本实例分享》要点:
本文介绍了WordPress中访客登陆实现邮件提醒的PHP脚本实例分享,希望对您有用。如果有疑问,可以联系我们。


登陆邮件提醒实现方法
前提是空间有邮件功能,测试有无邮件功能的方法:登录界面点击“忘记暗码”,有邮件发到你邮箱就有邮件功能.PHP学习

一、登录胜利提醒
就像银行的登录提醒一样,如果有人登录了系统,就会发一封邮件到邮箱,提醒你有人登录了,如果当时不是你登录,就要引起警惕了.将以下代码放入主题的functions.php中:

/*****************************************************
 函数名称:wp_login_notify v1.0 by DH.huahua. 
 函数作用:有登录wp后台就会email通知博主
******************************************************/
function wp_login_notify()
{
  date_default_timezone_set('PRC');
  $admin_email = get_bloginfo ('admin_email');
  $to = $admin_email;
 $subject = '你的博客空间登录提醒';
 $message = '<p>你好!你的博客空间(' . get_option("blogname") . ')有登录!</p>' . 
 '<p>请确定是您自己的登录,以防别人攻击!登录信息如下:</p>' . 
 '<p>登录名:' . $_POST['log'] . '</p>' .
 '<p>登录时间:' . date("Y-m-d H:i:s") . '</p>' .
 '<p>登录IP:' . $_SERVER['REMOTE_ADDR'] . '</p>'; 
 $wp_email = 'no-reply@' . preg_replace('#^www.#','',strtolower($_SERVER['SERVER_NAME']));
 $from = "From: "" . get_option('blogname') . "" <$wp_email>";
 $headers = "$fromnContent-Type: text/html; charset=" . get_option('blog_charset') . "n";
 wp_mail( $to,$subject,$message,$headers );
}
 
add_action('wp_login','wp_login_notify');

二、登录失败提醒
有人尝试登陆你的系统,但是没有成功,这种反复尝试的动作本身就需要被记录下来,发给博主,这样,只要有错误的登录,就会发一封邮件到自己的邮箱,将对方尝试的登录名和登录暗码发送到你邮箱.将以下代码放入主题的functions.php中:

/*****************************************************
 函数名称:wp_login_failed_notify v1.0 by DH.huahua. 
 函数作用:有错误登录wp后台就会email通知博主
******************************************************/
function wp_login_failed_notify()
{
  date_default_timezone_set('PRC');
  $admin_email = get_bloginfo ('admin_email');
  $to = $admin_email;
 $subject = '你的博客空间登录错误警告';
 $message = '<p>你好!你的博客空间(' . get_option("blogname") . ')有登录错误!</p>' . 
 '<p>请确定是您自己的登录失误,以防别人攻击!登录信息如下:</p>' . 
 '<p>登录名:' . $_POST['log'] . '</p>' .
 '<p>登录暗码:' . $_POST['pwd'] . '</p>' .
 '<p>登录时间:' . date("Y-m-d H:i:s") . '</p>' .
 '<p>登录IP:' . $_SERVER['REMOTE_ADDR'] . '</p>'; 
 $wp_email = 'no-reply@' . preg_replace('#^www.#',$headers );
}
 
add_action('wp_login_failed','wp_login_failed_notify');

效果如下图所示,后面有个登录所在地是用qqwry.dat做了个查询

修改后台登录地址
插件法
不少插件可以实现这样的功能,好比Protected wp-login和Stealth Login Page,直接下载安装即可,这里不多介绍.

代码法
不想用插件的话,直接将下面的代码复制到当前主题的 functions.php 文件中:

//掩护后台登录
function login_protection(){ 
  if($_GET['word'] != 'fuck')header('Location: http://blog.gimhoy.com/'); 
}
add_action('login_enqueue_scripts','login_protection'); 

这样只有打开 http://siteurl/wp-login.php?word=fuck,才会打开登录页,否则就会自动跳转到 http://blog.gimhoy.com/

但是博主这样做之后,邮箱里还是每天都收到很多登录失败的提醒邮件,于是采取了一个更加简单粗暴的办法:修改wp-login.php文件名

比如将wp-login.php修改成gimhoy-login.php,同时还要打开这个文件,将里面所有的wp-login.php替换成gimhoy-login.php.这样登录地址便成了http://siteurl/gimhoy-login.php.跟前面那个办法结合起来,就成了http://siteurl/gimhoy-login.php?word=fuck.

简单粗鲁,目的达成.

《WordPress中访客登陆实现邮件提醒的PHP脚本实例分享》是否对您有启发,欢迎查看更多与《WordPress中访客登陆实现邮件提醒的PHP脚本实例分享》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读