Almacenamiento de datos en la base de datos, WordPress WooCommerce

Actualmente estoy codificando lo siguiente, y no parece que mi base de datos interactúe con woocommerce, este es un formulario de registro / registro, por lo que la información básicamente solo debe enviarse a la base de datos para que se registre cuando el usuario necesite para usarlo? Sin embargo, logré que se registrara todo, como contraseña / nombre, etc., pero nada que ver con woocommerce, como la dirección de facturación. ¡Aquí está mi código, espero que pueda ayudar!

Create an Account

escape(trim($_POST['pwd1'])); $pwd2 = $wpdb->escape(trim($_POST['pwd2'])); $first_name = $wpdb->escape(trim($_POST['first_name'])); $last_name = $wpdb->escape(trim($_POST['last_name'])); $description = $wpdb->escape(trim($_POST['description'])); $email = $wpdb->escape(trim($_POST['email'])); $username = $wpdb->escape(trim($_POST['username'])); $url = $wpdb->escape(trim($_POST['url'])); $aim = $wpdb->escape(trim($_POST['aim'])); $yim = $wpdb->escape(trim($_POST['yim'])); $jabber = $wpdb->escape(trim($_POST['jabber'])); $googleplus = $wpdb->escape(trim($_POST['googleplus'])); $billing_first_name = $wpdb->escape(trim($_POST['billing_first_name'])); $billing_last_name = $wpdb->escape(trim($_POST['billing_last_name'])); $billing_company = $wpdb->escape(trim($_POST['billing_company'])); $billing_address_1 = $wpdb->escape(trim($_POST['billing_address_1'])); $billing_address_2 = $wpdb->escape(trim($_POST['billing_address_2'])); $billing_city = $wpdb->escape(trim($_POST['billing_city'])); $billing_postcode = $wpdb->escape(trim($_POST['billing_postcode'])); $billing_state = $wpdb->escape(trim($_POST['billing_state'])); $billing_country = $wpdb->escape(trim($_POST['billing_country'])); $billing_phone = $wpdb->escape(trim($_POST['billing_phone'])); $billing_email = $wpdb->escape(trim($_POST['billing_email'])); if( $email == "" || $pwd1 == "" || $pwd2 == "" || $username == "" || $first_name == "" || $last_name == "" || $description == "" ) { $err = 'Please don\'t leave the required fields.'; } else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) { $err = 'Invalid email address.'; } else if(email_exists($email) ) { $err = 'Email already exist.'; } else if($pwd1 $pwd2 ){ $err = 'Password do not match.'; } else { $user_id = wp_insert_user( array ( 'first_name' => apply_filters('pre_user_first_name', $first_name), 'last_name' => apply_filters('pre_user_last_name', $last_name), 'url' => apply_filters('pre_user_url', $url), 'aim' => apply_filters('pre_user_aim', $aim), 'yim' => apply_filters('pre_user_yim', $yim), 'jabber' => apply_filters('pre_user_jabber', $jabber), 'googleplus' => apply_filters('pre_user_googleplus', $googleplus), 'description' => apply_filters('pre_user_description', $description), 'user_pass' => apply_filters('pre_user_pass', $pwd1), 'user_login' => apply_filters('pre_user_login', $username), 'user_email' => apply_filters('pre_user_email', $email), 'role' => 'subscriber' ) ); if( is_wp_error($user_id) ) { $err = 'Error on user creation.'; } else { do_action('user_register', $user_id); $success = 'You\'re successfully register'; } } } ?>

Create Account.

Veo lo que estás tratando de hacer. La API de WP está funcionando correctamente, pero no tienes llamadas a la API de WooCommerce y es por eso que no actualiza nada en el lado WooCommerce. Aquí está la API para lo que estás buscando:

http://docs.woothemes.com/wc-apidocs/class-WC_Customer.html

EDITAR

Entonces, después de investigar un poco, descubrí que la información de usuario de WooCommerce se almacena junto con los datos de uso normal en la meta tabla de usuario en la base de datos de WordPress. Por lo tanto, para actualizar la información relevante de WooCommerce, eche un vistazo a esa tabla en el DB y encuentre los nombres de los valores que desea agregar / actualizar.

 update_user_meta($userId, 'company', $companydata); 

No conozco todos los metavalores que usa WooCommerce y no tengo una instalación de WordPress cerca, estoy trabajando principalmente con lo que sé de mi uso de WP en el pasado. Prueba esto,

Cree una nueva cuenta de comprador en la GUI de WordPress y complete cada campo de información para ese usuario. Luego vaya a su administrador de base de datos, como phpMyAdmin o cualquier otra cosa que le permita acceder directamente a su base de datos y consulte la meta tabla de usuario para ver qué información necesitará. : / Me temo que es casi todo el detalle que puedo darte.

He encontrado que la tabla de datos en la base de datos es ‘fj2a27xri_usermeta’ y lo siguiente en las celdas de esa tabla que están etiquetadas metakey: Aquí están todas las que estaba usando, ¿aún así la facturación y el envío no se registran?

 1- first_name 2 - last_name 3 - description 4 - email 5 - username 6 - url 7 - aim 8 - yim 9 - jabber 10 - googleplus 11 - billing_first_name 12 - billing_last_name 13 - billing_company 14 - billing_address_1 15 - billing_address_2 16 - billing_city 17 - billing_postcode 18 - billing_state 19 - billing_country 20 - billing_phone 21 - billing_email 

1-10 están trabajando y 11-21 NO están funcionando?