Иногда может потребоваться получить все заказы сайта или конкретного пользователя, для этого нам понадобится функция WC_Order_Query()
для получения id заказов сайта
<?php
$query = new WC_Order_Query(
array(
'limit' => 10, // указываем количество выводимых заказов, -1 вывести все
'orderby' => 'date',
'order' => 'DESC', // Возможные значения 'DESC', 'ASC' и rand'
'date_created' => '<' . ( time() - HOUR_IN_SECONDS ),// получить заказы до нужной даты
'return' => 'ids', // получаем только id заказов так же можно получить объект заказа возможные значения 'ids' и 'objects
'status' => 'completed',// нужный нам статус заказов. Возможные статусы заказа, pending || processing || on-hold || completed || cancelled || refunded || failed
'currency' => 'USD',//нужная валюта
)
);
print_r($query);возвращаемое значение
Array
(
[0] => 296
[1] => 294
[2] => 292
)
получаем id всех заказов пользователя
<?php
$query = new WC_Order_Query(
array(
'limit' => -1, //указываем количество выводимых заказов, -1 вывести все
'orderby' => 'date',
'order' => 'DESC',
'return' => 'ids', //получаем только id заказов
'status' => 'completed',// нужный нам статус заказов. Возможные статусы заказа, pending || processing || on-hold || completed || cancelled || refunded || failed
'customer_id' => $user_id, // id пользователя
'customer' => 'woocommerce@woocommerce.com',// так же можно получать заказы по почте пользователя
)
);
print_r($query);