Why the downvotes for using user meta? That’s how I do it, I store all the extra profile stuff in wp_usermeta
table by utilizing update_user_meta
.
<?php
// first validate all $_POST data
$validated = $this->validate_and_sanitize();
$username = $validated['uname'];
$password = $validated['pass'];
$email = $validated['email'];
$new_user_id = wp_create_user($username, $password, $email);
if ( is_wp_error($new_user_id) && array_key_exists('existing_user_login', $new_user_id->errors)) {
$return['status'] = 2; // email entered is already in use
$return['msg'] = 'Email entered is already in use';
echo json_encode($return);
exit;
}
if( !is_wp_error($new_user_id) ) {
if (isset( $validated['phone'] ) && strlen(trim($phone)) > 0) {
$phone = mysql_real_escape_string($validated['phone']);
$umeta_id_phone = update_user_meta( $new_user_id, 'phone', $phone );
}
if (isset( $validated['phone'] ) && strlen(trim($city)) > 0) {
$city = mysql_real_escape_string($validated['city']);
$umeta_id_city = update_user_meta( $new_user_id, 'city', $city );
}
}