当前位置:首页 > 行业动态 > 正文

WordPress 禁止用户修改密码后给管理员发送邮件通知

在WordPress中,当用户修改密码时,系统默认会向管理员发送邮件通知,如果你希望禁止这个功能,可以通过以下步骤来实现:

WordPress 禁止用户修改密码后给管理员发送邮件通知  第1张

1. 安装插件

你需要安装一个名为"Advanced Custom Fields"的插件,这个插件可以让你在WordPress后台添加自定义字段。

2. 创建自定义字段

安装并启用插件后,你需要创建一个自定义字段,用于存储用户是否修改了密码的信息。

进入WordPress后台,点击"自定义字段"。

点击"新建",然后输入以下信息:

标题:password_changed

字段类型:Text

默认值:false

3. 修改代码

接下来,你需要修改WordPress的代码,以便在用户修改密码时更新自定义字段的值,并禁止发送邮件通知。

3.1 打开functions.php文件

在你的主题文件夹中找到functions.php文件,用文本编辑器打开它。

3.2 添加代码

在functions.php文件中,添加以下代码:

// 当用户资料被更新时触发
add_action('profile_update', 'disable_password_notification', 10, 2);
function disable_password_notification($user_id, $old_user_data) {
    // 检查密码是否被修改
    if ($old_user_data>data>user_pass !== get_user_option('default_password', $user_id)) {
        // 更新自定义字段的值
        update_field('password_changed', 'true', $user_id);
        
        // 禁止发送邮件通知
        remove_action('profile_updated', 'wp_send_profile_update');
    } else {
        // 重置自定义字段的值
        update_field('password_changed', 'false', $user_id);
    }
}

3.3 保存并上传

保存functions.php文件,并将其上传到服务器上。

现在,当用户修改密码时,系统将不再向管理员发送邮件通知,自定义字段password_changed的值将被更新为true。

0