/** * {@inheritdoc} */ public function save_fields($item_id = null, $object_name = null) { /** * @var $wpdb wpdb */ global $wpdb; if (defined('IS_PROFILE_PAGE') && IS_PROFILE_PAGE) { /** * Fires before the page loads on the 'Your Profile' editing form. * * The action only fires if the current user is editing their own profile. * * @since 2.0.0 * * @param int $user_id The user ID. */ do_action('personal_options_update', $item_id); } else { /** * Fires before the page loads on the 'Edit User' form. * * @since 2.7.0 * * @param int $user_id The user ID. */ do_action('edit_user_profile_update', $item_id); } // Update the email address in signups, if present. if (is_multisite()) { $user = get_userdata($item_id); if ($user && $user->user_login && isset($_POST['email']) && is_email($_POST['email'])) { $signup_id = (int) $wpdb->get_var($wpdb->prepare("SELECT signup_id FROM {$wpdb->signups} WHERE user_login = %s", $user->user_login)); if (0 < $signup_id) { $wpdb->query($wpdb->prepare("UPDATE {$wpdb->signups} SET user_email = %s WHERE signup_id = %d", $_POST['email'], $signup_id)); } } } // Update the user. $errors = edit_user($item_id); global $super_admins; // Grant or revoke super admin status if requested. if (!defined('IS_PROFILE_PAGE') || !IS_PROFILE_PAGE) { if (is_multisite() && is_network_admin() && current_user_can('manage_network_options') && !isset($super_admins) && empty($_POST['super_admin']) == is_super_admin($item_id)) { if (empty($_POST['super_admin'])) { revoke_super_admin($item_id); } else { grant_super_admin($item_id); } } } // Return if not successful if (is_wp_error($errors)) { return $errors; } // Save additional fields return parent::save_fields($item_id, $object_name); }
/** * {@inheritdoc} */ public function save_fields($item_id = null, $object_name = null) { // Save new term $success = wp_update_term($item_id, $object_name, $_POST); // Return if not successful if (is_wp_error($success)) { return $success; } // Save additional fields return parent::save_fields($item_id, $object_name); }