WC_Abstract_Legacy_Order::add_fee( object $fee )
Add a fee to the order.
Description Description
Order must be saved prior to adding items.
Fee is an amount of money charged for a particular piece of work or for a particular right or service, and not supposed to be negative.
Parameters Parameters
- $fee
-
(Required) Fee data.
Return Return
(int) Updated order item ID.
Source Source
File: includes/legacy/abstract-wc-legacy-order.php
public function add_fee( $fee ) { wc_deprecated_function( 'WC_Order::add_fee', '3.0', 'a new WC_Order_Item_Fee object and add to order with WC_Order::add_item()' ); $item = new WC_Order_Item_Fee(); $item->set_props( array( 'name' => $fee->name, 'tax_class' => $fee->taxable ? $fee->tax_class : 0, 'total' => $fee->amount, 'total_tax' => $fee->tax, 'taxes' => array( 'total' => $fee->tax_data, ), 'order_id' => $this->get_id(), ) ); $item->save(); $this->add_item( $item ); wc_do_deprecated_action( 'woocommerce_order_add_fee', array( $this->get_id(), $item->get_id(), $fee ), '3.0', 'woocommerce_new_order_item action instead.' ); return $item->get_id(); }