Описание edit_user_{$field}
— Action
Хук edit_user_{$field} позволяет изменять данные определенного поля пользователя при редактировании профиля. Он срабатывает в момент, когда данные пользователя отправляются на сервер, и позволяет вносить изменения в конкретные поля, такие как email, имя и другие мета-данные пользователя
Примеры использования
Пример валидации email перед его сохранением:
add_action('edit_user_email', function($new_value, $user_id, $old_value) {
if (!filter_var($new_value, FILTER_VALIDATE_EMAIL)) {
return 'Неверный формат email';
}
return $new_value;
}, 10, 3);
В этом примере мы проверяем, соответствует ли новое значение формату email
Пример изменения имени пользователя перед его сохранением:
add_action('edit_user_first_name', function($new_value, $user_id, $old_value) {
return ucfirst($new_value);
}, 10, 3);
Здесь мы делаем первую букву имени заглавной перед сохранением
Пример добавления кастомного сообщения при изменении поля:
add_action('edit_user_description', function($new_value, $user_id, $old_value) {
$new_value .= ' (Обновлено)';
return $new_value;
}, 10, 3);
В этом примере мы добавляем ‘(Обновлено)’ к описанию пользователя
— Лучшие практики
– Использование
Используйте этот хук, когда нужно изменить или валидировать данные пользователя перед их сохранением в базе данных
– Производительность
Следите за тем, чтобы изменения не приводили к тяжелым вычислениям
– Предупреждения
Убедитесь, что изменения не нарушают работу других плагинов или тем, зависящих от этих данных
Альтернативы
Тип: action
Этот хук позволяет обрабатывать ошибки при обновлении профиля пользователя
Используйте его, если нужно обрабатывать ошибки, возникающие при сохранении данных пользователя