woocommerce_order_refunded操作挂钩不起作用

时间:2020-07-15 03:56:15

标签: woocommerce

我正在尝试添加与woocommerce_order_refunded挂钩相关联的操作,该操作是在创建(部分/全部)退款时将退款ID添加到订单注释中。 (您可能会发现一个例子,无论何时退款,都有说明库存增加)

order

但是该钩子似乎不起作用,这是我的代码:

function add_order_refund_note ($order_id, $refund_id ) {
        $order = wc_get_order( $order_id );
        $order_refunds = $order->get_refunds();

        foreach ( $order_refunds as $refund ) {
            $order->add_order_note( "Refund ID:" . $refund_id );

        }

add_action( 'woocommerce_order_refunded', 'add_order_refund_note', 10, 2 );

我不知道woocommerce_order_refunded是否有问题。我也尝试了另外两个动作钩子

woocommerce_order_partially_refunded
woocommerce_order_fully_refunded

但没有任何效果。

有人可以给我解决方案吗?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我对该功能没有太多的经验,但是当您想重复对象中可能存在的内容并对其进行不同处理时,通常使用foreach($order_refunds),因此尝试更改{{1} }命令,这样foreach()就变成了$order_refunds

在当前$refund内的通话对象:foreach()

尝试:

$order = wc_get_order( $order_id );