Обновление 2 (Проверка заказов в течение 24 часов с даты создания)
Вы можете использовать этот очень легкий SQL-запрос, встроенный в служебную функцию, которая получит все идентификаторы заказов, которые имеют статус «В ожидании» и «Обработка», в течение 24 часов с даты создания заказа:
function get_order_ids_to_check(){
global $wpdb;
return $wpdb->get_col( "
SELECT p.ID
FROM {$wpdb->prefix}posts as p
WHERE p.post_type LIKE 'shop_order'
AND p.post_status IN ('wc-on-hold','wc-processing')
AND UNIX_TIMESTAMP(p.post_date) >= (UNIX_TIMESTAMP(NOW()) - 86400)
" );
}
Код помещается в файл function.php активной дочерней темы (или активной темы). Проверено и работает.
ИСПОЛЬЗОВАНИЕ - Вы можете использовать его где угодно, в другой функции, как в этом примере с поддельным кодом:
// Get the Orders IDs to check
$orders_ids = get_order_ids_to_check();
// Loop through each order Ids
foreach( $orders_ids as $order_id ){
// Get the delivery order ID related to your external shipping service
$delivery_order_id = get_post_meta( $order_id, 'delivery_order_id', true );
}