Automattic\WooCommerce\Internal\Tax
TaxRateDataStore::get_rate_objects_for_ids
Fetch multiple tax rate rows in a single query, keyed by tax_rate_id.
Method of the class: TaxRateDataStore{}
No Hooks.
Returns
Array.
Usage
$TaxRateDataStore = new TaxRateDataStore(); $TaxRateDataStore->get_rate_objects_for_ids( $ids ): array;
- $ids(int[]) (required)
- Tax rate IDs to fetch.
Changelog
| Since 11.0.0 | Introduced. |
TaxRateDataStore::get_rate_objects_for_ids() TaxRateDataStore::get rate objects for ids code WC 11.0.0
public function get_rate_objects_for_ids( array $ids ): array {
$tax_rate_objects = array();
$ids = array_values( array_filter( array_map( 'absint', array_unique( $ids ) ) ) );
if ( ! empty( $ids ) ) {
global $wpdb;
$list = implode( ', ', $ids );
// phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared
$rows = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}woocommerce_tax_rates WHERE tax_rate_id IN ( $list )" );
foreach ( $rows as $row ) {
$tax_rate_objects[ (int) $row->tax_rate_id ] = $row;
}
}
return $tax_rate_objects;
}