通过 REST 下订单时的 woocommerce 挂钩 API
woocommerce hook when order is placed through REST API
在 WooCommerce 商店下订单时,我需要 运行 一些自定义 PHP 代码。目前,我正在使用 woocommerce_order_status_changed
钩子,它非常适合网络前端。
add_action('woocommerce_order_status_changed', 'order_confirmation',10, 3);
function order_confirmation($order_id,$oldstatus,$newstatus){
//my custom code...
}
但是当通过API下订单时,这个钩子不会被调用。
当通过 WooCommerce 的 Rest Api V2 下订单时,我们是否可以使用任何挂钩来执行某些 php 代码?
我认为您正在将 set_paid 属性 发送到 true
。它将状态设置为正在处理并减少库存项目。如果您需要在订单支付完成时执行操作,您可以使用woocommerce_payment_complete操作挂钩。
function on_woocommerce_payment_complete($order_id){
}
add_action( 'woocommerce_payment_complete', 'on_woocommerce_payment_complete'
);`
然而,只有当订单状态来自以下数组时,上述挂钩才会触发
on-hold', 'pending', 'failed', 'cancelled
在标记支付完成之前。
对于其他订单雕像,将触发以下挂钩。
do_action( 'woocommerce_payment_complete_order_status_' . $this->get_status(), $this->get_id() );
有关详细信息,您可以查看
public function payment_complete( $transaction_id = '' ) {
定义在
woocommerce\includes\class-wc-order.php
在 WooCommerce 商店下订单时,我需要 运行 一些自定义 PHP 代码。目前,我正在使用 woocommerce_order_status_changed
钩子,它非常适合网络前端。
add_action('woocommerce_order_status_changed', 'order_confirmation',10, 3);
function order_confirmation($order_id,$oldstatus,$newstatus){
//my custom code...
}
但是当通过API下订单时,这个钩子不会被调用。
当通过 WooCommerce 的 Rest Api V2 下订单时,我们是否可以使用任何挂钩来执行某些 php 代码?
我认为您正在将 set_paid 属性 发送到 true
。它将状态设置为正在处理并减少库存项目。如果您需要在订单支付完成时执行操作,您可以使用woocommerce_payment_complete操作挂钩。
function on_woocommerce_payment_complete($order_id){
}
add_action( 'woocommerce_payment_complete', 'on_woocommerce_payment_complete'
);`
然而,只有当订单状态来自以下数组时,上述挂钩才会触发
on-hold', 'pending', 'failed', 'cancelled
在标记支付完成之前。
对于其他订单雕像,将触发以下挂钩。
do_action( 'woocommerce_payment_complete_order_status_' . $this->get_status(), $this->get_id() );
有关详细信息,您可以查看
public function payment_complete( $transaction_id = '' ) {
定义在
woocommerce\includes\class-wc-order.php