У меня есть плагин, который я разработал, который соединяет заказ WooCommerce с HubSpot. Проблема, с которой я столкнулся, заключается в том, что, хотя он работает, хук, который я использую прямо сейчас, отправляет информацию о заказе в HubSpot до, и это технически завершено. Таким образом, это означает, что такие вещи, как невыполненные заказы, отправляются как ожидающие, а коды купонов опускаются.
Так что мне интересно, какой правильный крючок использовать.
Моя цель: каждый раз, когда заказ WooCommerce создается и завершается и заказ WooCommerce обновляется, отправлять данные в HubSpot.
Что у меня есть до сих пор:
add_action('save_post_shop_order', 'printout', 10, 3);
function printout($post_ID, $post, $update)
{
if (!is_admin()){
return;
}
if ($update){
$msg = $post_ID;
$order = get_woocommerce_order($msg);
mainplugin($msg, $order);
}
}
add_action('woocommerce_new_order', 'neworder_delegator', 10, 2);
function neworder_delegator($order_id, $order){
mainplugin($order_id, $order);
}
Так что я думаю, я просто ищу правильный крючок, чтобы получить то, что я хочу.
Спасибо!
🤔 А знаете ли вы, что...
С PHP можно создавать кастомные расширения с помощью Си-кода.
Вот ваш ответ:
Каждый переход заказа WooCommerce имеет один или несколько динамических хуков, которые срабатывают при изменении статуса.
Они начинаются с «woocommerce_order_status_», а оставшаяся часть действия — это либо новый статус, на который перешел заказ, либо статусы «вход» и «из», задействованные в формате «<status_transition_from>к<status_transition_to>».
Примеры
Вы можете подключить свою функцию к
add_action( 'woocommerce_order_status_completed', 'your_order_completed_function');
Чтобы активировать вашу функцию только тогда, когда заказ переходит в состояние завершено, и нет при возврате средств, отмене, приостановке и т. д., поскольку они будут выполняться при других действиях, таких как
woocommerce_order_status_refunded
woocommerce_order_status_cancelled
woocommerce_order_status_on-hold
woocommerce_order_status_failed
woocommerce_order_status_processing
Отредактировано для добавления ссылки на официальные документы WooCommerce:
https://woocommerce.github.io/code-reference/hooks/hooks.html