检查订单是否包含Woocommerce 3中的任何退款

问题描述 投票:2回答:1

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

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

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

但是,如果订单状态不会改变,如果只退出多个项目的单个项目,我就无法知道如何做到这一点。

任何的想法?

php wordpress methods woocommerce orders
1个回答
2
投票

您可以使用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

© www.soinside.com 2019 - 2024. All rights reserved.