Automattic\WooCommerce\Internal\Admin\Schedulers

OrdersScheduler::clear_failed_order_importpublic staticWC 11.0.0

Remove an order ID from the failed imports list.

Called after a successful import so the list always reflects orders that have not been imported since their last failure.

Method of the class: OrdersScheduler{}

No Hooks.

Returns

null. Nothing (null).

Usage

$result = OrdersScheduler::clear_failed_order_import( $order_id ): void;
$order_id(int) (required)
Order or refund ID to remove.

Changelog

Since 11.0.0 Introduced.

OrdersScheduler::clear_failed_order_import() code WC 11.0.1

public static function clear_failed_order_import( $order_id ): void {
	$order_id = absint( $order_id );
	if ( ! $order_id ) {
		return;
	}

	$failed = self::get_failed_order_imports();
	$index  = array_search( $order_id, $failed['ids'], true );

	if ( false === $index ) {
		return;
	}

	unset( $failed['ids'][ $index ] );
	$failed['ids'] = array_values( $failed['ids'] );

	if ( empty( $failed['ids'] ) && 0 === $failed['overflow'] ) {
		delete_option( self::FAILED_ORDER_IMPORTS_OPTION );
		return;
	}

	update_option( self::FAILED_ORDER_IMPORTS_OPTION, $failed, false );
}