Иногда может потребоваться получить все заказы сайта или конкретного пользователя, для этого нам понадобится функция 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);