Automattic\WooCommerce\Admin\Features\Fulfillments

FulfillmentsManager::update_fulfillment_status │ private │ WC 1.0

Update the fulfillment status for the order.

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

Хуков нет.

Возвращает

null. Ничего (null).

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

// private - только в коде основоного (родительского) класса
$result = $this->update_fulfillment_status( $order, $fulfillments );
$order(WC_Order) (обязательный)
The order object.
$fulfillments(массив)
The fulfillments data store.

This method updates the fulfillment status for the order based on the fulfillments data store.
По умолчанию: array()

Код FulfillmentsManager::update_fulfillment_status() WC 11.2.2

private function update_fulfillment_status( $order, $fulfillments = array() ) {
	$old_status = FulfillmentUtils::get_order_fulfillment_status( $order );
	$new_status = FulfillmentUtils::calculate_order_fulfillment_status( $order, $fulfillments );

	if ( 'no_fulfillments' === $new_status ) {
		$order->delete_meta_data( '_fulfillment_status' );
	} else {
		$order->update_meta_data( '_fulfillment_status', $new_status );
	}

	$order->save();

	if ( $old_status !== $new_status && isset( $this->fulfillment_order_notes ) ) {
		$this->fulfillment_order_notes->add_order_fulfillment_status_changed_note( $order, $old_status, $new_status );
	}
}