I’m looking for a standard way for the user to receive the total amount of orders in a date range or in the current month.
After examining the woocommerce source code that I got, woo uses something like this
$order_item_amounts = $this->get_order_report_data( array(
'data' => array(
'_line_total' => array(
'type' => 'order_item_meta',
'order_item_type' => 'line_item',
'function' => 'SUM',
'name' => 'order_item_amount'
),
'post_date' => array(
'type' => 'post_data',
'function' => '',
'name' => 'post_date'
),
'_product_id' => array(
'type' => 'order_item_meta',
'order_item_type' => 'line_item',
'function' => '',
'name' => 'product_id'
),
),
'where_meta' => array(
'relation' => 'OR',
array(
'type' => 'order_item_meta',
'meta_key' => array( '_product_id', '_variation_id' ),
'meta_value' => $this->product_ids,
'operator' => 'IN'
),
),
'group_by' => 'product_id, ' . $this->group_by_query,
'order_by' => 'post_date ASC',
'query_type' => 'get_results',
'filter_range' => true
) );
in class-wc-report-sales-by-product.php
But, as you know, this works on the basis of products, not users. from the above code,
$this->group_by_querycontains conditions for dates that can be found in the woo source. My question is how to use the built-in woocommerce function to create a list of orders based on a given date range.
thanks