我在WordPress 6.3.1版上使用Ultimate Member 2.6.11版。我的自定义用户名验证代码有问题。
我试图验证用户名字段,以确保它包含字符串“1234”。我使用以下代码:
add_action( 'um_submit_form_errors_hook', function( $args ) {
if ( isset( $args['mode'] ) && 'register' === $args['mode'] ) {
if ( !str_contains( $args['user_login'], '1234' ) ) {
UM()->form()->add_error( 'user_login', __( 'Username must contain the string "1234".', 'ultimate-member' ) );
}
}
}, 8, 1 );
但是,这段代码不起作用。我仍然可以注册用户名不包含所需字符串的用户。你能帮帮我吗
谢谢你
1条答案
按热度按时间eivnm1vs1#
我终于找到了解决办法,问题出在钩子的动作上。我用
um_submit_form_errors_hook__registration
修改了它,所以最后我的代码实际上看起来像这样: