Automattic\WooCommerce\Admin\API\Reports\Orders
DataStore::get_customers_by_orders()
Get customer data from Order data.
Method of the class: DataStore{}
No Hooks.
Return
Array
.
Usage
// protected - for code of main (parent) or child class $result = $this->get_customers_by_orders( $orders );
- $orders(array) (required)
- Array of orders data.
DataStore::get_customers_by_orders() DataStore::get customers by orders code WC 8.7.0
protected function get_customers_by_orders( $orders ) { global $wpdb; $customer_lookup_table = $wpdb->prefix . 'wc_customer_lookup'; $customer_ids = array(); foreach ( $orders as $order ) { if ( $order['customer_id'] ) { $customer_ids[] = intval( $order['customer_id'] ); } } if ( empty( $customer_ids ) ) { return array(); } /* phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared */ $customer_ids = implode( ',', $customer_ids ); $customers = $wpdb->get_results( "SELECT * FROM {$customer_lookup_table} WHERE customer_id IN ({$customer_ids})", ARRAY_A ); /* phpcs:enable */ return $customers; }