WC_Shipping_Zone_Data_Store::get_zone_data_for_idsprivateWC 1.0

Retrieve the zone data for the given zone_ids.

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

Хуков нет.

Возвращает

stdClass[]. An array of objects containing the zone data, keyed by the zone_id.

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

// private - только в коде основоного (родительского) класса
$result = $this->get_zone_data_for_ids( $ids );
$ids(массив) (обязательный)
The zone_ids to retrieve.

Код WC_Shipping_Zone_Data_Store::get_zone_data_for_ids() WC 10.8.1

private function get_zone_data_for_ids( array $ids ) {
	global $wpdb;

	if ( empty( $ids ) || array( '0' ) === $ids || array( 0 ) === $ids ) {
		return array();
	}

	$zone_ids = array_map( 'absint', $ids );

	// phpcs:disable WordPress.DB.PreparedSQL.NotPrepared -- $zone_ids already run through absint.
	return $wpdb->get_results(
		"SELECT zone_id, zone_name, zone_order FROM {$wpdb->prefix}woocommerce_shipping_zones " .
		'WHERE zone_id IN ( ' . implode( ',', $zone_ids ) . ' ) ',
		OBJECT_K
	);
	// phpcs:enable WordPress.DB.PreparedSQL.NotPrepared
}