Ограничение определенных ролей WordPress - регистрация по домену
Я пытаюсь использовать то же самое для плагина Ultimate Members. Например, "ROLE1" может регистрироваться с любым адресом электронной почты, но "ROLE2" ограничен, скажем, учетными записями.edu.
Ссылка: https://wordpress.stackexchange.com/questions/248123/restrict-certain-roles-registrations-by-domain
Когда я пробую этот фрагмент (ответ: stackexchange), он говорит: "На вашем сайте возникла техническая проблема".
Я также прочитал документ о "Блокировать любую регистрацию, которая не использует @gmail в качестве почтового провайдера" на сайте единой системы обмена сообщениями ". Можно ли изменить этот код для разных ролей, как в моем вопросе выше?
function um_custom_validate_username( $args ) {
static $domain = '@gmail.com';
if ( isset( $args['user_email'] ) ) {
if ( !strstr( $args['user_email'], '@gmail.com' ) ) {
$message = sprintf( __( 'Only use the email domain %1$s for registration', 'ultimate-member' ), $domain );
UM()->form()->add_error( 'user_email', $message );
}
}
}
add_action( 'um_submit_form_errors_hook__registration', 'um_custom_validate_username', 99 );