Automattic\WooCommerce\Internal\DataStores\Orders

OrdersTableDataStore::trash_order()publicWC 1.0

Trashes an order.

{} Это метод класса: OrdersTableDataStore{}

Хуков нет.

Возвращает

null. Ничего.

Использование

$OrdersTableDataStore = new OrdersTableDataStore();
$OrdersTableDataStore->trash_order( $order );
$order(\WC_Order) (обязательный) (передается по ссылке — &)
The order object

Код OrdersTableDataStore::trash_order() WC 6.9.4

public function trash_order( &$order ) {
	global $wpdb;

	if ( 'trash' === $order->get_status( 'edit' ) ) {
		return;
	}

	$trash_metadata = array(
		'_wp_trash_meta_status' => $order->get_status( 'edit' ),
		'_wp_trash_meta_time'   => time(),
	);

	foreach ( $trash_metadata as $meta_key => $meta_value ) {
		$this->add_meta(
			$order,
			(object) array(
				'key'   => $meta_key,
				'value' => $meta_value,
			)
		);
	}

	$wpdb->update(
		self::get_orders_table_name(),
		array( 'status' => 'trash' ),
		array( 'id' => $order->get_id() ),
		array( '%s' ),
		array( '%d' )
	);

	$order->set_status( 'trash' );
}