WC_REST_Orders_V2_Controller::prepare_fee_lines()
Create or update an order fee.
Метод класса: WC_REST_Orders_V2_Controller{}
Хуков нет.
Возвращает
WC_Order_Item_Fee
.
Использование
// protected - в коде основоного (родительского) или дочернего класса $result = $this->prepare_fee_lines( $posted, $action, $item );
- $posted(массив) (обязательный)
- Item data.
- $action(строка)
- 'create' to add fee or 'update' to update it.
По умолчанию: 'create' - $item(объект)
- Passed when updating an item. Null during creation.
По умолчанию: null
Код WC_REST_Orders_V2_Controller::prepare_fee_lines() WC REST Orders V2 Controller::prepare fee lines WC 7.7.0
protected function prepare_fee_lines( $posted, $action = 'create', $item = null ) { $item = is_null( $item ) ? new WC_Order_Item_Fee( ! empty( $posted['id'] ) ? $posted['id'] : '' ) : $item; if ( 'create' === $action ) { if ( empty( $posted['name'] ) ) { throw new WC_REST_Exception( 'woocommerce_rest_invalid_fee_item', __( 'Fee name is required.', 'woocommerce' ), 400 ); } } $this->maybe_set_item_props( $item, array( 'name', 'tax_class', 'tax_status', 'total' ), $posted ); $this->maybe_set_item_meta_data( $item, $posted ); return $item; }