Home » WooCommerce: Update User Meta After a Successful Order

WooCommerce: Update User Meta After a Successful Order

by Tutor Aspire

When an order is placed in WooCommerce, you might want to change/add something in the User Meta programmatically.

For example, you could “check” a custom checkbox in the User Profile. Or maybe assign the User Twitter username. And so on 🙂

WooCommerce: edit user meta after successful checkout

PHP Snippet: Update User Meta After a Successful Order in WooCommerce

In this example, we’re saving the customer IP address into a user custom field. You can get other order data by checking https://www.businessbloomer.com/woocommerce-easily-get-order-info-total-items-etc-from-order-object/.

/**
 * @snippet       Update User Meta After a Successful Order - WooCommerce
 * @how-to        Get tutoraspire.com FREE
 * @author        Tutor Aspire
 * @compatible    WooCommerce 4.6
 * @donate $9     https://tutoraspire.com
 */

add_action( 'woocommerce_thankyou', 'tutoraspire_checkout_save_user_meta' );

function tutoraspire_checkout_save_user_meta( $order_id ) {
$order = wc_get_order( $order_id );
$user_id = $order->get_user_id();
if ( $order->get_customer_ip_address() ) {  
update_user_meta( $user_id, 'latest_ip_address', $order->get_customer_ip_address() );
}
}

You may also like