是否可以通过编程方式检查订单是否包含任何退款?
如果是这种情况,我想显示特定的文本。到目前为止我正在检查它是否取消:
if($order->has_status('cancelled') echo "display text";
但是,如果订单状态不会改变,如果只退出多个项目的单个项目,我就无法知道如何做到这一点。
任何的想法?
您可以使用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