Có hai móc rất khác nhau mà bạn có thể sử dụng, tùy thuộc vào cài đặt:
wpmu_validate_user_signup
cho nhiều trang web và
registration_errors
cho trang web đơn.
Các mã chưa được kiểm tra sau đây cho thấy làm thế nào để sử dụng chúng. Bạn có thể điều chỉnh các mảng theo user_name_is_forbidden()
nhu cầu của bạn. Sử dụng các biểu thức thông thường cho các trận đấu.
// multi-site
add_filter( 'wpmu_validate_user_signup', function( $result )
{
// there is already an error
if ( $result['errors']->get_error_message('user_name') )
return $result;
if ( user_name_is_forbidden( $result['user_name'] ) )
$result['errors']->add('user_name', __( 'That username is not allowed.' ) );
return $result;
});
//single-site
add_filter( 'registration_errors', function( $errors, $name )
{
if ( user_name_is_forbidden( $name ) )
$errors->add('user_name', __( 'That username is not allowed.' ) );
return $errors;
}, 10, 2);
function user_name_is_forbidden( $name )
{
// If you need the character '~', write it as '\~'.
$forbidden = array(
'admin.*',
'genitals.*',
'system.*'
);
return (bool) preg_match( '~' . join( '|', $forbidden ) . '~i', $name );
}