Files
ultimatemember/includes/core/um-actions-save-profile.php
T
nikitozzzzzzz 9e53314c3a !!! IMPORTANT 2.0 version before upgrade please run full backup of your site !!!
- new code structure, optimized for next development;
  - created spl_autoloader for remove includes;
  - UM classes with namespaces;
  - deprecated global $ultimatemember; variable (use UM() instead);
- new UM/WP roles logic;
- new settings class and logic (deprecated Redux framework, deprecated some old options, added some new options);
- new dependencies class for extensions;
- WP native styles for backend fields;
- new upgrades and license activations for extensions;
- new logic form backend forms and fields;
- created uninstall.php file for delete permanently all UM settings;
- optimized registration/upgrade profile process;

Deprecated Hooks:

um_new_user_registration_plain
um_user_registration_extra_hook
um_add_user_frontend
um_post_registration_global_hook
um_admin_extend_directory_options_general (was action...will be filter)
2017-07-26 14:57:52 +03:00

70 lines
2.0 KiB
PHP

<?php
/***
*** @profile name update
***/
add_action( 'um_update_profile_full_name', 'um_update_profile_full_name' );
function um_update_profile_full_name( $changes ) {
// Sync display name changes
$option = um_get_option( 'display_name' );
$user_id = UM()->user()->id;
if( ! isset( $user_id ) || empty( $user_id ) ){
$user = get_user_by( 'email', $changes['user_email'] );
um_fetch_user( $user->ID );
$user_id = $user->ID;
}
switch ( $option ) {
default:
break;
case 'full_name':
$update_name = get_user_meta( $user_id, 'first_name', true ) . ' ' . get_user_meta( $user_id, 'last_name', true );
break;
case 'sur_name':
$fname = get_user_meta( $user_id, 'first_name', true );
$lname = get_user_meta( $user_id, 'last_name', true );
$update_name = $lname . ' ' . $fname;
break;
case 'initial_name':
$fname = get_user_meta( $user_id, 'first_name', true );
$lname = get_user_meta( $user_id, 'last_name', true );
$update_name = $fname . ' ' . $lname[0];
break;
case 'initial_name_f':
$fname = get_user_meta( $user_id, 'first_name', true );
$lname = get_user_meta( $user_id, 'last_name', true );
$update_name = $fname[0] . ' ' . $lname;
break;
case 'nickname':
$update_name = get_user_meta( $user_id, 'nickname', true );
break;
}
if ( isset( $update_name ) ) {
$arr_user = array( 'ID' => $user_id, 'display_name' => $update_name );
$return = wp_update_user( $arr_user );
if( is_wp_error( $return ) ) {
wp_die( '<pre>' . var_export( array( 'message' => $return->get_error_message(), 'dump' => $arr_user, 'changes' => $changes ), true ) . '</pre>' );
}
}
if ( isset( $changes['first_name'] ) && isset( $changes['last_name'] ) ) {
$full_name = UM()->user()->profile['display_name'];
$full_name = UM()->validation()->safe_name_in_url( $full_name );
update_user_meta( UM()->user()->id, 'full_name', $full_name );
}
// regenerate slug
UM()->user()->get_profile_url( $user_id, true );
}