Fix user profile url with single dashed in last name

This commit is contained in:
champsupertramp
2016-03-01 17:51:05 +08:00
parent 343cd08178
commit 2c0d0e75df
2 changed files with 31 additions and 1 deletions
+28 -1
View File
@@ -67,4 +67,31 @@
um_fetch_user( um_profile_id() );
return $actions;
}
}
/**
* Filter user basename
* @param string $value
* @return string
* @hook_filter: um_clean_user_basename_filter
*/
add_filter('um_clean_user_basename_filter','um_clean_user_basename_filter',2,10);
function um_clean_user_basename_filter( $value, $raw ){
// Checks if last name has dash
if( ! empty( um_user('last_name') ) && strrpos( um_user('last_name') ,"-") ){
$current_user_last_name = strtolower( um_user('last_name') );
if( strrpos($raw, $current_user_last_name) > -1 ){
$a = strrpos($current_user_last_name, $raw);
$swap_lastname = substr($current_user_last_name, $a);
$swap_lastname = str_replace('-',' ', $swap_lastname);
$value = str_replace( $swap_lastname, $current_user_last_name, $value);
}
}
return $value;
}
+3
View File
@@ -68,6 +68,7 @@
***/
function um_clean_user_basename( $value ) {
$raw_value = $value;
$value = str_replace('<hon>', '', $value);
$value = preg_replace('/^([a-z]{2,3})\./', '$1<hon>', $value);
$value = preg_replace('/([a-z]{2,3})\.$/', '$1<hon>', $value);
@@ -76,6 +77,8 @@
$value = str_replace('+', ' ', $value);
$value = str_replace('<hon>', '.', $value);
$value = apply_filters('um_clean_user_basename_filter', $value, $raw_value );
return $value;
}
/***