Я пытаюсь создать функцию, которая будет отправлять уведомление по электронной почте администратору, когда пользователь обновляет только указанные c поля профиля (например, поля с ID 8,9,10). Меня не волнует, что обновленное значение будет отправлено по электронной почте. Я просто хочу получить уведомление, что одно из указанных полей c было обновлено.
Я сделал что-то вроде этого
add_action('xprofile_profile_field_data_updated', 'checkField', 10, 2);
function checkField($field_id, $value) {
// Getting current logged in user's info
$current_user = wp_get_current_user();
// Checking the hidden value and if it has any value
if($field_id == 8 && $value != '')
// Sending email
wp_mail( 'YOUR_EMAIL_ADDRESS ', 'Phone no is changed', $current_user->user_login . ' has changed his phone number ');
if($field_id == 9 && $value != '')
// Sending email
wp_mail( 'YOUR_EMAIL_ADDRESS ', 'Address is changed', $current_user->user_login . ' has changed his address ');
if($field_id == 10 && $value != '')
// Sending email
wp_mail( 'YOUR_EMAIL_ADDRESS ', 'Email is changed', $current_user->user_login . ' has changed his email ');
}
, но он возвращает мне электронные письма, даже если обновляю любое другое поле профиля. Я просто хотел бы получать электронные письма только после обновления одного из этих полей профиля . Я не могу понять, как работает xprofile_profile_field_data_updated, и нужен ли мне другой крючок.
Любая помощь будет принята.