7 月 18 2011
WordPress后台登陆邮件提醒脚本。。。
本文共被喵星人侦察过7,762次。。。WordPress应该是现在使用最多的个人独立博客系统了。使用量的增加也使一些人盯上了WordPress这块风水宝地,这样一来WP的安全性就显得尤为重要。今天懒猫发布的这一脚本就可以为你的WordPres博客加一个看门狗,下面来看详细。。。
首先,使用这一脚本需要你的服务器能够发送邮件。。。(在登录WordPress的时候点击 忘记密码 ,如果收到邮件就说明有邮件功能。没有的可以试试 WP STMP CONFIG这一个插件。。。)
确认能够使用邮件后,就可以使用懒猫提供的脚本了。
先告诉大家这一个脚本干什么用的。
这一个脚本分两个部分,大家可以根据自己的喜好添加,或者都添加上。
第一个部分,作用是在你的WordPress博客有人登录的时候给博主的邮箱发送一封提醒邮件。效果如下:
第二个脚本懒猫觉得更加实用一点,这个脚本可以在有人尝试登录失败的时候发送邮件提醒你,如果有人想暴力破解密码的话马上就能看出来,然后直接禁封IP搞定。。。效果如下。。。
废话少叙,上代码。。。
代码一,登录提醒
/****************************************************************** 函数名称:wp_login_notify v1.0 DH.huahua. 函数作用:有用户登录wp后台就会email通知博主 *******************************************************************/ function wp_login_notify() { date_default_timezone_set('PRC'); $admin_email = get_bloginfo ('admin_email'); $to = $admin_email; $subject = 'WordPress博客登录提醒'; $message = '<p>你好!你的WordPress博客(' . 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\.#', '', strtolower($_SERVER['SERVER_NAME'])); $from = "From: \"" . get_option('blogname') . "\" <$wp_email>"; $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n"; wp_mail( $to, $subject, $message, $headers ); } add_action('wp_login', 'wp_login_notify');
代码二,登录失败提醒
/******************************************************************************** 函数名称: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 = '你的WordPress博客登录错误警告'; $message = '<p>你好!你的WordPress博客(' . 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\.#', '', strtolower($_SERVER['SERVER_NAME'])); $from = "From: \"" . get_option('blogname') . "\" <$wp_email>"; $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n"; wp_mail( $to, $subject, $message, $headers ); } add_action('wp_login_failed', 'wp_login_failed_notify');
使用方法很简单,吧代码添加到自己正在使用主题的functions.php就可以了。。。
DH
2011 年 08 月 18 日 @ 18:17
这个怎么和我的代码很相似呢?
大懒猫
2011 年 08 月 18 日 @ 18:21
是么?这什么情况。。。当时找同学要的,他说他自己做的。。。难道Google的您的?如果是我马上改。。。
DH
2011 年 08 月 18 日 @ 18:44
http://dhblog.org/25.html。
应该是我的。我的google好像没有收录,最近网站调整了。不用更改了,知道自己的东西被反复传送,也是很开心的。这个还是有一些小小的bug,还没有来得及更改,等以后更改了发布新的版本。
大懒猫
2011 年 08 月 18 日 @ 18:47
好吧。。。抱歉,下次再这样我一定搜索仔细。。。然后再发出来。。。
我还是改了吧,不然良心不安。。。
Clove
2011 年 08 月 20 日 @ 22:00
我说呢,原来是你自己跑过来了
小猫博客不错
大懒猫
2011 年 08 月 20 日 @ 22:13
谢谢哈。。。