不知道大家发现没有,很多知名网站在用户账户密码被修改的时候都会发送一封提醒邮件,来防止网站用户的密码被恶意修改。本来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 . "n您在".$site_name."的账户密码已被修改!nn如果不是您本人修改的,请迅速至".$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 . "nYour profile has been updated!nnThank you for visitingn ".$site_url."";
- wp_mail( $to, $subject, $message);
- }
- add_action( 'profile_update', 'user_profile_update', 10, 2);
复制代码
第二段代码的作用是在用户更新账户信息时发出邮件提示。
再来一段,当wordpress用户的帐号被删除时给用户发送提示邮件的代码:
- function v7v3_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 . "n您在".$site_name."的账户已被管理员删除!nn如果您对本次操作有什么异议,请联系管理员反馈!";
- wp_mail( $email, $subject, $message);
- }
- add_action( 'delete_user', 'v7v3_delete_user' );
-
复制代码
|