wc_delete_shop_order_transients()
Clear all transients cache for order data.
Hooks from the function
Returns
null. Nothing (null).
Usage
wc_delete_shop_order_transients( $order );
- $order(int|WC_Order)
- Order instance or ID.
wc_delete_shop_order_transients() wc delete shop order transients code WC 10.6.2
function wc_delete_shop_order_transients( $order = 0 ) {
if ( is_numeric( $order ) ) {
$order = wc_get_order( $order );
}
// Clear customer's order related caches.
$order_id = 0;
if ( is_a( $order, 'WC_Order' ) ) {
$order_id = $order->get_id();
$customer_id = $order->get_customer_id();
Users::delete_site_user_meta( $customer_id, 'wc_money_spent' );
Users::delete_site_user_meta( $customer_id, 'wc_order_count' );
Users::delete_site_user_meta( $customer_id, 'wc_last_order' );
}
// Increments the transient version to invalidate cache.
WC_Cache_Helper::get_transient_version( 'orders', true );
// Do the same for regular cache.
WC_Cache_Helper::invalidate_cache_group( 'orders' );
do_action( 'woocommerce_delete_shop_order_transients', $order_id );
}