Automattic\WooCommerce\Internal\DataStores\Orders
OrdersTableDataStore::clear_cached_data
Delete cached order data for the given object_ids.
Method of the class: OrdersTableDataStore{}
No Hooks.
Returns
true|false[]. Array of return values, grouped by the object_id. Each value is either true on success, or false if the contents were not deleted.
Usage
$OrdersTableDataStore = new OrdersTableDataStore(); $OrdersTableDataStore->clear_cached_data( $order_ids ): array;
- $order_ids(array) (required)
- The IDs of the orders to remove cache.
OrdersTableDataStore::clear_cached_data() OrdersTableDataStore::clear cached data code WC 10.3.3
public function clear_cached_data( array $order_ids ): array {
if ( ! OrderUtil::custom_orders_table_datastore_cache_enabled() ) {
return array_fill_keys( $order_ids, true );
}
$cache_engine = wc_get_container()->get( WPCacheEngine::class );
$cache_group = $this->get_cache_group();
$return_values = array();
foreach ( $order_ids as $order_id ) {
$return_values[ $order_id ] = $cache_engine->delete_cached_object( $order_id, $cache_group );
}
if ( is_callable( array( $this->data_store_meta, 'clear_cached_data' ) ) ) {
$successfully_deleted_cache_order_ids = array_keys( array_filter( $return_values ) );
$cache_deletion_results = $this->data_store_meta->clear_cached_data( $successfully_deleted_cache_order_ids );
foreach ( $cache_deletion_results as $order_id => $meta_cache_was_deleted ) {
$return_values[ $order_id ] = $return_values[ $order_id ] && $meta_cache_was_deleted;
}
}
return $return_values;
}