Automattic\WooCommerce\Internal\DataStores\Orders
DataSynchronizer::delete_auto_draft_orders
Handles deletion of auto-draft orders in sync with WP's own auto-draft deletion.
Method of the class: DataSynchronizer{}
Hooks from the method
Returns
null
. Nothing (null).
Usage
$DataSynchronizer = new DataSynchronizer(); $DataSynchronizer->delete_auto_draft_orders();
Changelog
Since 7.7.0 | Introduced. |
DataSynchronizer::delete_auto_draft_orders() DataSynchronizer::delete auto draft orders code WC 9.9.5
public function delete_auto_draft_orders() { if ( ! $this->custom_orders_table_is_authoritative() ) { return; } // Fetch auto-draft orders older than 1 week. $to_delete = wc_get_orders( array( 'date_query' => array( array( 'column' => 'date_created', 'before' => '-1 week', ), ), 'orderby' => 'date', 'order' => 'ASC', 'status' => 'auto-draft', ) ); foreach ( $to_delete as $order ) { $order->delete( true ); } /** * Fires after schedueld deletion of auto-draft orders has been completed. * * @since 7.7.0 */ do_action( 'woocommerce_scheduled_auto_draft_delete' ); }