Automattic\WooCommerce\StoreApi\Schemas\V1

CheckoutSchema::get_checkout_responseprotectedWC 1.0

Get the checkout response based on the current order and any payments.

Метод класса: CheckoutSchema{}

Хуков нет.

Возвращает

Массив.

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

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->get_checkout_response( $order, ?PaymentResult $payment_result, ?\WC_Cart $cart );
$order(WC_Order) (обязательный)
Order object.
?PaymentResult $payment_result
.
По умолчанию: null
?\WC_Cart $cart
.
По умолчанию: null

Код CheckoutSchema::get_checkout_response() WC 10.5.1

protected function get_checkout_response( \WC_Order $order, ?PaymentResult $payment_result = null, ?\WC_Cart $cart = null ) {
	$payment_result = $payment_result ? [
		'payment_status'  => $payment_result->status,
		'payment_details' => $this->prepare_payment_details_for_response( $payment_result->payment_details ),
		'redirect_url'    => $payment_result->redirect_url,
	] : null;

	return [
		'order_id'           => $order->get_id(),
		'status'             => $order->get_status(),
		'order_key'          => $order->get_order_key(),
		'order_number'       => $order->get_order_number(),
		'customer_note'      => $order->get_customer_note(),
		'customer_id'        => $order->get_customer_id(),
		'billing_address'    => (object) $this->billing_address_schema->get_item_response( $order ),
		'shipping_address'   => (object) $this->shipping_address_schema->get_item_response( $order ),
		'payment_method'     => $order->get_payment_method(),
		'payment_result'     => $payment_result,
		'additional_fields'  => (object) $this->get_additional_fields_response( $order ),
		'__experimentalCart' => $cart ? (object) $this->cart_schema->get_item_response( $cart ) : null,
		self::EXTENDING_KEY  => $this->get_extended_data( self::IDENTIFIER ),
	];
}