不知道大家發現沒有,很多知名網站在用户賬户密碼被修改的時候都會發送一封提醒郵件,來防止網站用户的密碼被惡意修改。本來 WordPress 是屬於博客程序,但是最近越來越多的 WordPress 網站開放了會員中心繫統,那麼這樣一來就不得不考慮到用户的賬户安全了,所以做一個密碼修改提示郵件的功能就非常有必要了,小編下面給出具體代碼 (PS:代碼都是加到 functions.php 文件即可):

function password_reset_mail( $user_id ) {
        $site_name = get_bloginfo('name');
        $site_url = get_bloginfo('wpurl');
        $user_info = get_userdata( $user_id );
        $to = $user_info->user_email;
        $subject = "密碼修改提示:".$site_name."";
        $message = "您好," .$user_info->display_name . "
您在".$site_name."的賬户密碼已被修改!

如果不是您本人修改的,請迅速至".$site_url."確認。";
        wp_mail( $to, $subject, $message);
}
add_action( 'password_reset', 'password_reset_mail', 10, 2);

此段代碼是參考以下代碼做出修改而得來的:

function user_profile_update( $user_id ) {
        $site_url = get_bloginfo('wpurl');
        $user_info = get_userdata( $user_id );
        $to = $user_info->user_email;
        $subject = "Profile Updated: ".$site_url."";
        $message = "Hello " .$user_info->display_name . "
Your profile has been updated!

Thank you for visiting
 ".$site_url."";
        wp_mail( $to, $subject, $message);
}
add_action( 'profile_update', 'user_profile_update', 10, 2);

第二段代碼的作用是在用户更新賬户信息時發出郵件提示,代碼來源:

http://www.trickspanda.com/2014/08/send-email-notifications-user-profile-updates-WordPress/

再來一段,當 WordPress 用户的帳號被刪除時給用户發送提示郵件的代碼:

function wxd_delete_user( $user_id ) {
    global $wpdb;
    $site_name = get_bloginfo('name');
    $user_obj = get_userdata( $user_id );
    $email = $user_obj->user_email;
    $subject = "帳號刪除提示:".$site_name."";
    $message = "您好," .$user_obj->display_name . "
您在".$site_name."的賬户已被管理員刪除!

如果您對本次操作有什麼異議,請聯繫管理員反饋!";
    wp_mail( $email, $subject, $message);
}
add_action( 'delete_user', 'wxd_delete_user' );

PS:有很長一段時間小編都沒有怎麼更新網站了,從今天起小編又開始努力的更新網站了~~歡迎大家來訪。