WC_Shipping_Zones::get_zone_by()public staticWC 2.6.0

Get shipping zone by an ID.

Метод класса: WC_Shipping_Zones{}

Хуков нет.

Возвращает

WC_Shipping_Zone|true|false.

Использование

$result = WC_Shipping_Zones::get_zone_by( $by, $id );
$by(строка)
Get by 'zone_id' or 'instance_id'.
По умолчанию: 'zone_id'
$id(int)
ID.

Список изменений

С версии 2.6.0 Введена.

Код WC_Shipping_Zones::get_zone_by() WC 8.7.0

public static function get_zone_by( $by = 'zone_id', $id = 0 ) {
	$zone_id = false;

	switch ( $by ) {
		case 'zone_id':
			$zone_id = $id;
			break;
		case 'instance_id':
			$data_store = WC_Data_Store::load( 'shipping-zone' );
			$zone_id    = $data_store->get_zone_id_by_instance_id( $id );
			break;
	}

	if ( false !== $zone_id ) {
		try {
			return new WC_Shipping_Zone( $zone_id );
		} catch ( Exception $e ) {
			return false;
		}
	}

	return false;
}