【问题标题】:Check if an order contains any refund in Woocommerce 3在 Woocommerce 3 中检查订单是否包含任何退款
【发布时间】:2019-07-28 07:22:33
【问题描述】:

是否可以通过程序检查订单是否包含任何退款?

如果是这种情况,我想显示一个特定的文本。到目前为止,我正在检查它是否被取消:

if($order->has_status('cancelled') echo "display text";

但是,如果多件商品的订单中只有一件商品被退款,订单状态不会改变,我不知道该怎么做。

有什么想法吗?

【问题讨论】:

    标签: php wordpress methods woocommerce orders


    【解决方案1】:

    您可以使用 WC_Order 方法get_refunds() 喜欢:

    if( sizeof( $order->get_refunds() ) > 0 ) {
        printf( 'Order id %s has some refund', $order->get_id() ); 
    }
    

    或者作为自定义条件函数:

    function has_refunds( $order ) {
        return sizeof( $order->get_refunds() ) > 0 ? true : false;
    }
    

    用法:

    if( has_refunds( $order ) ) {
       // Do something
    }
    

    相关回答线程:Get refunded orders and refunded order items details in Woocommerce 3

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-28
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      • 2017-09-21
      • 2019-12-15
      • 2020-01-11
      • 1970-01-01
      相关资源
      最近更新 更多