| |
| <?php
|
| function wc_register_guests( $order_id ) {
|
|
|
| $order = new WC_Order($order_id);
|
|
|
|
|
| $order_email = $order->billing_email;
|
|
|
|
|
| $email = email_exists( $order_email );
|
| $user = username_exists( $order_email );
|
|
|
|
|
| if( $user == false && $email == false ){
|
|
|
|
|
| $random_password = wp_generate_password();
|
|
|
|
|
| $user_id = wp_create_user( $order_email, $random_password, $order_email );
|
|
|
|
|
| update_user_meta( $user_id, 'guest', 'yes' );
|
|
|
|
|
| update_user_meta( $user_id, 'billing_address_1', $order->billing_address_1 );
|
| update_user_meta( $user_id, 'billing_address_2', $order->billing_address_2 );
|
| update_user_meta( $user_id, 'billing_city', $order->billing_city );
|
| update_user_meta( $user_id, 'billing_company', $order->billing_company );
|
| update_user_meta( $user_id, 'billing_country', $order->billing_country );
|
| update_user_meta( $user_id, 'billing_email', $order->billing_email );
|
| update_user_meta( $user_id, 'billing_first_name', $order->billing_first_name );
|
| update_user_meta( $user_id, 'billing_last_name', $order->billing_last_name );
|
| update_user_meta( $user_id, 'billing_phone', $order->billing_phone );
|
| update_user_meta( $user_id, 'billing_postcode', $order->billing_postcode );
|
| update_user_meta( $user_id, 'billing_state', $order->billing_state );
|
|
|
|
|
| update_user_meta( $user_id, 'shipping_address_1', $order->shipping_address_1 );
|
| update_user_meta( $user_id, 'shipping_address_2', $order->shipping_address_2 );
|
| update_user_meta( $user_id, 'shipping_city', $order->shipping_city );
|
| update_user_meta( $user_id, 'shipping_company', $order->shipping_company );
|
| update_user_meta( $user_id, 'shipping_country', $order->shipping_country );
|
| update_user_meta( $user_id, 'shipping_first_name', $order->shipping_first_name );
|
| update_user_meta( $user_id, 'shipping_last_name', $order->shipping_last_name );
|
| update_user_meta( $user_id, 'shipping_method', $order->shipping_method );
|
| update_user_meta( $user_id, 'shipping_postcode', $order->shipping_postcode );
|
| update_user_meta( $user_id, 'shipping_state', $order->shipping_state );
|
|
|
|
|
| wc_update_new_customer_past_orders( $user_id );
|
| }
|
|
|
| }
|
|
|
|
|
| add_action( 'woocommerce_thankyou', 'wc_register_guests', 10, 1 );
|
| |
| |
Comments