WC_Abstract_Order::save()
Save data to the database.
Method of the class: WC_Abstract_Order{}
Hooks from the method
Return
Int
. order ID
Usage
$WC_Abstract_Order = new WC_Abstract_Order(); $WC_Abstract_Order->save();
Changelog
Since 3.0.0 | Introduced. |
WC_Abstract_Order::save() WC Abstract Order::save code WC 9.2.3
public function save() { if ( ! $this->data_store ) { return $this->get_id(); } try { /** * Trigger action before saving to the DB. Allows you to adjust object props before save. * * @param WC_Data $this The object being saved. * @param WC_Data_Store_WP $data_store THe data store persisting the data. */ do_action( 'woocommerce_before_' . $this->object_type . '_object_save', $this, $this->data_store ); if ( $this->get_id() ) { $this->data_store->update( $this ); } else { $this->data_store->create( $this ); } $this->save_items(); if ( OrderUtil::orders_cache_usage_is_enabled() ) { $order_cache = wc_get_container()->get( OrderCache::class ); $order_cache->remove( $this->get_id() ); } /** * Trigger action after saving to the DB. * * @param WC_Data $this The object being saved. * @param WC_Data_Store_WP $data_store THe data store persisting the data. */ do_action( 'woocommerce_after_' . $this->object_type . '_object_save', $this, $this->data_store ); } catch ( Exception $e ) { $message_id = $this->get_id() ? $this->get_id() : __( '(no ID)', 'woocommerce' ); $this->handle_exception( $e, wp_kses_post( sprintf( /* translators: 1: Order ID or "(no ID)" if not known. */ __( 'Error saving order ID %1$s.', 'woocommerce' ), $message_id ) ) ); } return $this->get_id(); }