Automattic\WooCommerce\Internal\DataStores\Orders

OrdersTableDataStoreMeta::get_meta_data_for_object_ids()publicWC 1.0

Return order meta data for multiple IDs. Results are cached.

Method of the class: OrdersTableDataStoreMeta{}

No Hooks.

Return

\stdClass[][]. An array, keyed by the object IDs, containing arrays of raw meta data for each object.

Usage

$OrdersTableDataStoreMeta = new OrdersTableDataStoreMeta();
$OrdersTableDataStoreMeta->get_meta_data_for_object_ids( $object_ids ): array;
$object_ids(array) (required)
List of order IDs.

OrdersTableDataStoreMeta::get_meta_data_for_object_ids() code WC 9.6.0

public function get_meta_data_for_object_ids( array $object_ids ): array {
	if ( ! OrderUtil::custom_orders_table_datastore_cache_enabled() ) {
		return parent::get_meta_data_for_object_ids( $object_ids );
	}

	$meta_data  = $this->get_meta_data_for_object_ids_from_cache( $object_ids );
	$object_ids = array_diff( $object_ids, array_keys( $meta_data ) );

	if ( empty( $object_ids ) ) {
		return $meta_data;
	}

	$db_meta_data = parent::get_meta_data_for_object_ids( $object_ids );
	$this->set_meta_data_for_objects_in_cache( $db_meta_data );

	return $db_meta_data + $meta_data;
}