web-dev-qa-db-fra.com

Envoyer un courrier électronique à l'administrateur lorsque l'utilisateur/le membre met à jour des données d'utilisateur/de membre spécifiques

J'ai déjà demandé comment envoyer automatiquement un courrier électronique à l'administrateur lorsqu'un utilisateur/membre modifie ses données de profil. Et obtenu de très bonnes réponses. Envoyez un courrier automatique à l'administrateur lorsque l'utilisateur/le membre change/ajoute un profil

Maintenant, un suivi: je veux seulement envoyer/envoyer par courriel les données (profiledata) qui ont été mises à jour/ajoutées.

2
Fredag

Voici une version modifiée basée sur le travail des autres, ici . Cette instance envoie un courrier électronique si le champ de courrier électronique de l'utilisateur a été modifié. Echangez 'user_email' avec la méta utilisateur que vous préférez.

add_action( 'personal_options_update', 'notify_admin_on_update' );
add_action( 'edit_user_profile_update','notify_admin_on_update');
function notify_admin_on_update(){
global $current_user;
get_currentuserinfo();

if (!current_user_can( 'administrator' )){// avoid sending emails when admin is updating user profiles
    $to = '[email protected]';//change this email to whatever
    $subject = 'A user has updated their profile';//sent email subject field
    $message = "The user : " .$current_user->display_name . " has updated their email to: " .$current_user->user_email."";
    wp_mail( $to, $subject, $message);//the code that sends the message
}
}
1
Batmanian