diff --git a/includes/core/class-builtin.php b/includes/core/class-builtin.php index bbe8249d..424a5ebc 100644 --- a/includes/core/class-builtin.php +++ b/includes/core/class-builtin.php @@ -1565,6 +1565,7 @@ if ( ! class_exists( 'um\core\Builtin' ) ) { $array['unique_username_or_email'] = __('Unique Username/E-mail','ultimate-member'); $array['url'] = __('Website URL','ultimate-member'); $array['youtube_url'] = __('YouTube Profile','ultimate-member'); + $array['youtube_video'] = __('YouTube Video','ultimate-member'); $array['spotify_url'] = __('Spotify URL','ultimate-member'); $array['telegram_url'] = __('Telegram URL','ultimate-member'); $array['discord'] = __('Discord ID','ultimate-member'); diff --git a/includes/core/um-actions-form.php b/includes/core/um-actions-form.php index cc5d9526..643f8f68 100644 --- a/includes/core/um-actions-form.php +++ b/includes/core/um-actions-form.php @@ -791,6 +791,13 @@ function um_submit_form_errors_hook_( $submitted_data, $form_data ) { } break; + case 'youtube_video': + if ( ! UM()->validation()->is_url( $submitted_data[ $key ], 'youtube.com/watch?v=' ) && ! UM()->validation()->is_url( $submitted_data[ $key ], 'youtu.be' ) && ! UM()->validation()->is_url( $submitted_data[ $key ], 'youtube.com/shorts/' ) ) { + // translators: %s: label. + UM()->form()->add_error( $key, sprintf( __( 'Please enter a valid %s URL', 'ultimate-member' ), $array['label'] ) ); + } + break; + case 'spotify_url': if ( ! UM()->validation()->is_url( $submitted_data[ $key ], 'open.spotify.com' ) ) { // translators: %s: label.