WC_Shipping_Zone_Data_Store::delete( WC_Shipping_Zone $zone, array $args = array() )
Deletes a shipping zone from the database.
Description Description
Parameters Parameters
- $zone
-
(Required) Shipping zone object.
- $args
-
(Optional) Array of args to pass to the delete method.
Default value: array()
Return Return
(void)
Source Source
File: includes/data-stores/class-wc-shipping-zone-data-store.php
public function delete( &$zone, $args = array() ) { $zone_id = $zone->get_id(); if ( $zone_id ) { global $wpdb; // Delete methods and their settings. $methods = $this->get_methods( $zone_id, false ); if ( $methods ) { foreach ( $methods as $method ) { $this->delete_method( $method->instance_id ); } } // Delete zone. $wpdb->delete( $wpdb->prefix . 'woocommerce_shipping_zone_locations', array( 'zone_id' => $zone_id ) ); $wpdb->delete( $wpdb->prefix . 'woocommerce_shipping_zones', array( 'zone_id' => $zone_id ) ); $zone->set_id( null ); WC_Cache_Helper::invalidate_cache_group( 'shipping_zones' ); WC_Cache_Helper::get_transient_version( 'shipping', true ); do_action( 'woocommerce_delete_shipping_zone', $zone_id ); } }
Changelog Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |