Automattic\WooCommerce\StoreApi\Utilities
OrderController::create_order_from_cart
Create order and set props based on global settings.
Method of the class: OrderController{}
No Hooks.
Returns
\WC_Order. A new order object.
Usage
$OrderController = new OrderController(); $OrderController->create_order_from_cart();
OrderController::create_order_from_cart() OrderController::create order from cart code WC 10.8.1
public function create_order_from_cart() {
if ( wc()->cart->is_empty() ) {
throw new RouteException(
'woocommerce_rest_cart_empty',
__( 'Cannot create order from empty cart.', 'woocommerce' ),
400
);
}
add_filter( 'woocommerce_default_order_status', array( $this, 'default_order_status' ) );
$order = new \WC_Order();
$order->set_status( 'checkout-draft' );
$order->set_created_via( 'store-api' );
$this->update_order_from_cart( $order );
remove_filter( 'woocommerce_default_order_status', array( $this, 'default_order_status' ) );
return $order;
}