使暂停订单状态通知在 Woocommerce 中工作

RWS*_*RWS 2 php wordpress orders email-notifications woocommerce

我需要发送,当我手动设置从订单状态的客户电子邮件通知processingon-hold状态。我已将以下操作挂钩添加到我的functions.php文件中:

add_action( 'woocommerce_order_status_processing_to_on-hold_notification', array( $this, 'trigger' ), 10, 2 );
Run Code Online (Sandbox Code Playgroud)

它不工作(没有显示在 WP 邮件日志中),即使在 woocommerce 设置中启用了这个特定的电子邮件通知,并且如下所示的类似钩子工作得很好:

add_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $this, 'trigger' ), 10, 2 );
Run Code Online (Sandbox Code Playgroud)

环境:Woocommerce v.3.5.1 Wordpress v.4.9.9 PHP 5.6

任何帮助将非常感激。

Loi*_*tec 5

更新了钩子

您应该尝试以下挂钩函数:

add_action( 'woocommerce_order_status_processing_to_on-hold', 'enable_processing_to_on_hold_notification', 10, 2 );
function enable_processing_to_on_hold_notification( $order_id, $order ){
    // Getting all WC_emails array objects
    $mailer = WC()->mailer()->get_emails();

    // Send the "On Hold" notification
    $mailer['WC_Email_Customer_On_Hold_Order']->trigger( $order_id );
}
Run Code Online (Sandbox Code Playgroud)

代码位于活动子主题(活动主题)的 function.php 文件中。它应该有效。