WordPress后台登录错误自动邮件提醒功能代码分享

WordPress做为不错的建站程序越来越多的被人选择,随之而来的就是 wordpress 网站的安全问题凸现出来,如何做好 wordpress 网站的安全防范工作成为重点内容。

如果你的 wordpress网站后台被人尝试恶意登录或暴力破解而不自知是非常不安全的,本文就是利用简单代码实现 wordpress 后台登录自动邮件提醒功能,从而让你第一时间知道网站可能处于危险之中而去采取相应的防范措施避免损失。

实现方法也很简单,添加如下代码到你 wordpress 网站当前主题的 funtions.php 文件中即可:

  1. /*****************************************************
  2. 作用:后台登录失败时邮件通知管理员站长 ——jianlove.com
  3. ******************************************************/
  4. function wp_login_failed_notify()
  5. {
  6. date_default_timezone_set('PRC');
  7. $admin_email = get_bloginfo ('admin_email');
  8. $to = $admin_email;
  9. $subject = '你的网站登录错误警告';
  10. $message = '<p>您好!您的网站(' . get_option("blogname") . ')有登录错误!</p>' .
  11. '<p>请确定是您自己的登录失误,以防别人攻击!登录信息如下:</p>' .
  12. '<p>登录名:' . $_POST['log'] . '<p>' .
  13. '<p>登录密码:' . $_POST['pwd'] . '<p>' .
  14. '<p>登录时间:' . date("Y-m-d H:i:s") . '<p>' .
  15. '<p>登录IP:' . $_SERVER['REMOTE_ADDR'] . '<p>';
  16. $wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
  17. $from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
  18. $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
  19. wp_mail( $to, $subject, $message, $headers );
  20. }
  21. add_action('wp_login_failed', 'wp_login_failed_notify');

这段代码的作用就是当有人尝试登录破解你的 wordpress 网站后台而没成功时自动发送邮件给你。

上面是登录 WP后台错误不成功邮件通知,还有 WP后台登录成功邮件通知代码:

  1. /*****************************************************
  2. 作用:后台登录成功时邮件通知管理员站长——jianlove.com
  3. ******************************************************/
  4. function wp_login_notify()
  5. {
  6. date_default_timezone_set('PRC');
  7. $admin_email = get_bloginfo ('admin_email');
  8. $to = $admin_email;
  9. $subject = '你的网站登录提醒';
  10. $message = '<p>您好!您的网站(' . get_option("blogname") . ')有登录!</p>' .
  11. '<p>请确定是您自己的登录,以防别人攻击!登录信息如下:</p>' .
  12. '<p>登录时间:' . date("Y-m-d H:i:s") . '<p>' .
  13. '<p>登录IP:' . $_SERVER['REMOTE_ADDR'] . '<p>';
  14. $wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
  15. $from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
  16. $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
  17. wp_mail( $to, $subject, $message, $headers );
  18. }
  19. add_action('wp_login', 'wp_login_notify');

如果你自己经常登录后台操作网站,可以只添加登录错误的代码而不添加这段(收到很多登陆成功的邮件提醒也很烦人的)。

本文自动发送邮件的功能需要网站主机支持,最好是使用 SMTP 功能发送邮件更加简单安全。如果你还不知道 wordpress 网站的SMTP 发送邮件功能可以参看:给你的 WordPress 网站增加 SMTP 发送邮件功能代码

 

转载请注明链接地址:荐爱小站 » WordPress后台登录错误自动邮件提醒功能代码分享

赞 (0) 赏 !

觉得文章有用就打赏一下吧,赠人玫瑰手有余香!

支付宝扫一扫打赏

微信扫一扫打赏