@peretc001

Выполнить действие при автоотмене заказа WoocCommerce?

Добрый день

Woocommerce автоматические отменяет заказы со статусов в ожидании оплаты на отменен через заданный промежуток времени

Подскажите, как подписаться на данное событие для выполнения своего функционала.

Я пытаюсь так, Если я вручную меняю статус то работае, а при автоотмене это не работает. В functions.php
add_action( 'woocommerce_order_edit_status', 'switips_update_order', 10, 1 );
add_action( 'woocommerce_order_status_changed', 'switips_update_order', 10, 1 );
add_action( 'woocommerce_order_status_cancelled', 'switips_update_order', 10, 1 );
function switips_update_order( $order_id )
{
    $order = new WC_Order($order_id);
    #Для проверки работоспособности
    setcookie( 'order', (string)$order->get_status(), time() + 3600 * 24 * 30, "/");
};
  • Вопрос задан
  • 133 просмотра
Пригласить эксперта
Ответы на вопрос 1
@peretc001 Автор вопроса
Я нашел что для отмены заказа создается крон задача
function wc_cancel_unpaid_orders() {
	...

	wp_clear_scheduled_hook( 'woocommerce_cancel_unpaid_orders' );
	wp_schedule_single_event( time() + ( absint( $held_duration ) * 60 ), 'woocommerce_cancel_unpaid_orders' );
}
add_action( 'woocommerce_cancel_unpaid_orders', 'wc_cancel_unpaid_orders' );


Пытаюсь подписаться на нее, тоже не работает
add_action( 'wc_cancel_unpaid_orders', 'switips_update_order_test', 10, 1 );
function switips_update_order_test( $order_id )
{
    setcookie('order', 'cancelled', time() + 3600 * 24 * 30, "/");
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы