File: /var/www/html/sparkle/test.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
function wh_getOrderbyCouponCode($coupon_code, $start_date, $end_date) {
global $wpdb;
$return_array = [];
$total_discount = 0;
$query = "SELECT
p.ID AS order_id
FROM
{$wpdb->prefix}posts AS p
INNER JOIN {$wpdb->prefix}woocommerce_order_items AS woi ON p.ID = woi.order_id
WHERE
p.post_type = 'shop_order' AND
p.post_status IN ('" . implode("','", array_keys(wc_get_order_statuses())) . "') AND
woi.order_item_type = 'coupon' AND
woi.order_item_name = '" . $coupon_code . "' AND
DATE(p.post_date) BETWEEN '" . $start_date . "' AND '" . $end_date . "';";
$orders = $wpdb->get_results($query);
if (!empty($orders)) {
$dp = ( isset($filter['dp']) ? intval($filter['dp']) : 2 );
//looping throught all the order_id
foreach ($orders as $key => $order) {
$order_id = $order->order_id;
//getting order object
$objOrder = wc_get_order($order_id);
$return_array[$key]['order_id'] = $order_id;
$return_array[$key]['total'] = wc_format_decimal($objOrder->get_total(), $dp);
$return_array[$key]['total_discount'] = wc_format_decimal($objOrder->get_total_discount(), $dp);
$total_discount += $return_array[$key]['total_discount'];
}
// echo '<pre>';
// print_r($return_array);
}
$return_array['full_discount'] = $total_discount;
$orders = wh_getOrderbyCouponCode('8656', '2019-09-17', '2020-10-07');
echo 'Total Discount : ' . $orders['full_discount'];
//print_r($orders);
?>