I am adding woocommerce customer programmatically using wc_create_new_customer function, first name, last name, email is added successfully, but custom fields are not adding.
I have tried two ways
1st one:
$email= $arr_item->email;
enter code here$username = strstr($arr_item->email, ‘@’, true);
$password = wp_generate_password();
$args = array(
“first_name” => $arr_item->first_name,
“billing_first_name” => $arr_item->first_name,
“last_name” => $arr_item->last_name,
“billing_last_name” => $arr_item->last_name,
“billing_email” => $arr_item->email,
“billing_phone” => $arr_item->phone,
“agency_name” => $arr_item->agency_name,
“billing_company” => $arr_item->agency_name,
“agency_country” => $arr_item->agency_country,
“agency_city” => $arr_item->agency_city,
“agency_state” => $arr_item->agency_state
);
$customer_id = wc_create_new_customer( $email, $username, $password, $args );
2nd one
$customer_id = wc_create_new_customer( $email, $username, $password );
update_user_meta( $customer_id, ‘agency_name’,$arr_item->agency_name);
update_user_meta( $customer_id, ‘billing_company’, $arr_item->agency_name);
update_user_meta( $customer_id, ‘agency_country’, $arr_item->agency_country);
update_user_meta( $customer_id, ‘agency_city’, $arr_item->agency_city);
update_user_meta( $customer_id, ‘agency_state’,$arr_item->agency_state);
I am trying to add custom field user meta table while creating a customer using wc_create_new_customer
So that I can access these data using get_user_meta().
Please help if anyone has any ideas.
Thanks in advance
2
Answers
You need to save a customer. Add this 2 lines at the end.
For anybody looking for an answer to this question:
Overview: To create a new customer for your store you create a WP User using
wc_create_new_customer()
followed by adding their personal details to theirWC_Customer
instance.Example:
Your customers details will show in the Users tab of the WP Admin and in their account details.