如果订单状态为暂停,则禁用 WooCommerce 新订单电子邮件通知

问题描述

当订单状态为“暂停”时,有没有办法禁用发送给管理员的“新订单”电子邮件通知

或者只为“处理”状态启用它?

我也尝试了不同的方法来仅在状态为“处理中”时接收“新订单”电子邮件,但没有成功。

任何帮助。

解决方法

更新

要禁用在订单状态为“暂停”时发送给管理员的“新订单”电子邮件通知,请使用:

add_filter( 'woocommerce_email_recipient_new_order','disable_new_order_for_on_hold_order_status',10,2 );
function disable_new_order_for_on_hold_order_status( $recipient,$order = false ) {
    if ( ! $order || ! is_a( $order,'WC_Order' ) ) 
        return $recipient;

    return $order->get_status() === 'on-hold' ? '' : $recipient;
}

要启用发送给管理员的“新订单”电子邮件通知仅在订单状态为“处理中”时替换上述功能:

return = $order->get_status() === 'on-hold' ? '' : $recipient;

具有以下内容:

return = $order->get_status() === 'processing' ? $recipient : '';

代码位于活动子主题(或活动主题)的functions.php 文件中。经测试有效。