woocommerce_registration_errors
Позволяет изменить набор ошибок при регистрации нового пользователя WooCommerce.
Срабатывает до создания пользователя WooCommerce, до вызова функции wp_insert_user(). Это позволяет сделать нужные проверки и на основе них вернуть ошибку, если нужно.
Использование
add_filter( 'woocommerce_registration_errors', 'wp_kama_woocommerce_registration_errors_filter', 10, 3 );
/**
* Function for `woocommerce_registration_errors` filter-hook.
*
* @param \WP_Error $errors Error object.
* @param string $username Customer username.
* @param string $user_email Customer email address.
*
* @return \WP_Error
*/
function wp_kama_woocommerce_registration_errors_filter( $errors, $username, $user_email ){
// filter...
return $errors;
}
- $errorsWP_Error
- Экземпляр класса WP_Error.
- $username
- Имя пользователя.
- Email пользователя.
Примеры
#1 Запретим регистрацию пользователей с почтой от mail.ru
add_filter( 'woocommerce_registration_errors', 'woocommerce_add_registration_errors', 10, 3 );
/**
* Возвращает ошибки
*
* @param WP_Error $errors
*
* @return WP_Error
*/
function woocommerce_add_registration_errors( $errors, $username, $email ) {
if ( strpos( $email, '@mail.ru' ) !== false ) {
$errors->add( 'registration-error-invalid-email', 'Используйте другую почту, отличную от mail.ru.' );
}
return $errors;
}
Список изменений
| С версии 7.2.0 | Введена. |
Где вызывается хук
woocommerce_registration_errors
woocommerce/includes/wc-user-functions.php 134
$errors = apply_filters( 'woocommerce_registration_errors', $errors, $username, $email );
