From 57ef818cec90bd36c95ed5a241e2fdaf1ea96a21 Mon Sep 17 00:00:00 2001 From: Mykyta Synelnikov Date: Mon, 9 Oct 2023 19:50:44 +0300 Subject: [PATCH] - use `user_login` by default while generating slug if custom user meta is empty; --- includes/core/class-user.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/includes/core/class-user.php b/includes/core/class-user.php index 3c97e305..4935e463 100644 --- a/includes/core/class-user.php +++ b/includes/core/class-user.php @@ -842,6 +842,25 @@ if ( ! class_exists( 'um\core\User' ) ) { * add_filter( 'um_custom_meta_permalink_base_generate_user_slug', 'my_custom_meta_permalink_base_generate_user_slug', 10, 3 ); */ $user_in_url = apply_filters( 'um_custom_meta_permalink_base_generate_user_slug', $user_in_url, $user_id, $custom_meta ); + + if ( empty( $user_in_url ) ) { + $user_in_url = $userdata->user_login; + if ( is_email( $user_in_url ) ) { + + $user_email = $user_in_url; + $user_in_url = str_replace( '@', '', $user_in_url ); + + if ( ( $pos = strrpos( $user_in_url, '.' ) ) !== false ) { + $search_length = strlen( '.' ); + $user_in_url = substr_replace( $user_in_url, '-', $pos, $search_length ); + } + update_user_meta( $user_id, "um_email_as_username_{$user_in_url}", $user_email ); + + } else { + $user_in_url = urlencode( $user_in_url ); + } + update_user_meta( $user_id, "um_user_profile_url_slug_user_login", $user_in_url ); + } } }