Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Woocommerce 3中检查订单是否包含任何退款_Php_Wordpress_Methods_Woocommerce_Orders - Fatal编程技术网

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

Php 在Woocommerce 3中检查订单是否包含任何退款,php,wordpress,methods,woocommerce,orders,Php,Wordpress,Methods,Woocommerce,Orders,如果订单包含任何程序性退款,是否可以检查订单 如果是这样的话,我想显示一个特定的文本。到目前为止,我正在检查它是否已取消: if($order->has_status('cancelled') echo "display text"; 但是,由于订单状态不会改变,如果只是一个项目的订单中的多个项目是退款,我不知道如何做到这一点 有什么想法吗?您可以使用WC\u Order方法获取退款()如: if( sizeof( $order->get_refunds() ) > 0 )

如果订单包含任何程序性退款,是否可以检查订单

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

if($order->has_status('cancelled') echo "display text";
但是,由于订单状态不会改变,如果只是一个项目的订单中的多个项目是退款,我不知道如何做到这一点


有什么想法吗?

您可以使用WC\u Order方法
获取退款()
如:

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
}
相关答案线索: