WC_Shipping_Zones::location_covers_location │ private static │ WC 11.1.0

Check whether one location covers another location.

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

Хуков нет.

Возвращает

bool. Whether the possible broader location covers the location.

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

$result = WC_Shipping_Zones::location_covers_location( $possible_broader_location, $location );
$possible_broader_location(объект) (обязательный)
Possible broader location.
$location(объект) (обязательный)
Location to check.

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

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

Код WC_Shipping_Zones::location_covers_location() WC 11.2.2

private static function location_covers_location( $possible_broader_location, $location ) {
	$broader_type = $possible_broader_location->type ?? '';
	$broader_code = $possible_broader_location->code ?? '';
	$type         = $location->type ?? '';
	$code         = $location->code ?? '';

	if ( $broader_type === $type && $broader_code === $code ) {
		return true;
	}

	if ( 'continent' === $broader_type ) {
		return self::get_continent_code_for_location( $location ) === $broader_code;
	}

	if ( 'country' === $broader_type ) {
		return 'state' === $type && self::get_country_code_from_state_code( $code ) === $broader_code;
	}

	return false;
}