Описание profile_update
— Action
Хук profile_update срабатывает после обновления профиля пользователя в WordPress. Он позволяет выполнять дополнительные действия, такие как отправка уведомлений, обновление связанных данных или выполнение проверки данных после изменения профиля
Примеры использования
Пример отправки уведомления по электронной почте при обновлении профиля:
add_action('profile_update', function($user_id, $old_user_data) {
$user_info = get_userdata($user_id);
$to = $user_info->user_email;
$subject = 'Ваш профиль обновлен';
$message = 'Здравствуйте, ' . $user_info->display_name . '. Ваш профиль был успешно обновлен.';
wp_mail($to, $subject, $message);
}, 10, 2);
В этом примере, после обновления профиля, пользователю отправляется уведомление на электронную почту
Пример логирования изменений в профиле:
add_action('profile_update', function($user_id, $old_user_data) {
$new_user_data = get_userdata($user_id);
$log_message = sprintf('Пользователь %s обновил профиль: %s -> %s', $new_user_data->user_login, $old_user_data->display_name, $new_user_data->display_name);
error_log($log_message);
}, 10, 2);
Здесь мы логируем изменения в профиле пользователя в файл error_log
Пример обновления пользовательских метаданных после обновления профиля:
add_action('profile_update', function($user_id, $old_user_data) {
if ($_POST['custom_field']) {
update_user_meta($user_id, 'custom_field', sanitize_text_field($_POST['custom_field']));
}
}, 10, 2);
В этом примере мы обновляем пользовательское поле, если оно было отправлено в форме обновления профиля
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо выполнять дополнительные действия после обновления профиля пользователя
– Производительность
Убедитесь, что код, выполняемый в этом хуке, оптимизирован для предотвращения возможных проблем с производительностью
– Предупреждения
Будьте осторожны с изменениями пользовательских данных, чтобы избежать потери информации
Альтернативы
Тип: action
Этот хук срабатывает перед обновлением профиля пользователя и позволяет выполнять валидацию данных
Используйте его, если нужно проверить данные перед их сохранением