WC_Shipping_Zone_Data_Store::save_locations()
Save locations to the DB. This function clears old locations, then re-inserts new if any changes are found.
Метод класса: WC_Shipping_Zone_Data_Store{}
Хуков нет.
Возвращает
true|false|null
.
Использование
// private - только в коде основоного (родительского) класса $result = $this->save_locations( $zone );
- $zone(WC_Shipping_Zone) (обязательный) (передается по ссылке — &)
- Shipping zone object.
Список изменений
С версии 3.0.0 | Введена. |
Код WC_Shipping_Zone_Data_Store::save_locations() WC Shipping Zone Data Store::save locations WC 8.7.0
private function save_locations( &$zone ) { $changed_props = array_keys( $zone->get_changes() ); if ( ! in_array( 'zone_locations', $changed_props, true ) ) { return false; } global $wpdb; $wpdb->delete( $wpdb->prefix . 'woocommerce_shipping_zone_locations', array( 'zone_id' => $zone->get_id() ) ); foreach ( $zone->get_zone_locations( 'edit' ) as $location ) { $wpdb->insert( $wpdb->prefix . 'woocommerce_shipping_zone_locations', array( 'zone_id' => $zone->get_id(), 'location_code' => $location->code, 'location_type' => $location->type, ) ); } }