WC_REST_Legacy_Orders_Controller::update_order()
Устарела с версии 3.0.0. Больше не поддерживается и может быть удалена. Рекомендуется заменить эту функцию на аналог.
Update order.
Метод класса: WC_REST_Legacy_Orders_Controller{}
Хуков нет.
Возвращает
int|WP_Error
.
Использование
// protected - в коде основоного (родительского) или дочернего класса $result = $this->update_order( $request );
- $request(WP_REST_Request) (обязательный)
- Full details about the request.
Список изменений
Устарела с | 3.0.0 |
Код WC_REST_Legacy_Orders_Controller::update_order() WC REST Legacy Orders Controller::update order WC 7.7.2
protected function update_order( $request ) { try { $order = $this->prepare_item_for_database( $request ); $order->save(); // Handle set paid. if ( $order->needs_payment() && true === $request['set_paid'] ) { $order->payment_complete( $request['transaction_id'] ); } // If items have changed, recalculate order totals. if ( isset( $request['billing'] ) || isset( $request['shipping'] ) || isset( $request['line_items'] ) || isset( $request['shipping_lines'] ) || isset( $request['fee_lines'] ) || isset( $request['coupon_lines'] ) ) { $order->calculate_totals(); } return $order->get_id(); } catch ( WC_Data_Exception $e ) { return new WP_Error( $e->getErrorCode(), $e->getMessage(), $e->getErrorData() ); } catch ( WC_REST_Exception $e ) { return new WP_Error( $e->getErrorCode(), $e->getMessage(), array( 'status' => $e->getCode() ) ); } }