向管理员发送暂停订单状态电子邮件通知

时间:2017-01-28 23:51:48

标签: php wordpress woocommerce orders email-notifications

我希望管理员在WooCommerce中也能收到暂停订单通知。现在,只有客户才能收到通知。

我尝试过以下代码,但似乎无法正常工作。

这是我的代码:

add_filter( 'woocommerce_email_headers', 'mycustom_headers_filter_function', 10, 2);
function mycustom_headers_filter_function( $headers, $object ) {
    if ($object == 'customer_on_hold_order') {
        $headers .= 'BCC: My name <my@email.com>' . "\r\n";
    }
    return $headers;
}

使用正确的过滤器/挂钩应该是什么?

由于

2 个答案:

答案 0 :(得分:1)

&#34;暂停&#34; 订单状态电子邮件通知的正确 $email_id 'customer_on-hold_order'

所以你的代码将是:

add_filter( 'woocommerce_email_headers', 'custom_admin_email_notification', 10, 3);
function custom_admin_email_notification( $headers, $email_id, $order ) {

    if( 'customer_on-hold_order' == $email_id ){
        // Set HERE the Admin email
        $headers .= 'Bcc: My name <my@email.com>\r\n';
    }
    return $headers;
}

代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中。

代码经过测试并有效。

类似的答案:How to get order ID in woocommerce_email_headers hook

答案 1 :(得分:0)

已经3年了,WooCommerce国家似乎已经改变。我尝试使用新状态xargs => make sim ....customer_on-hold_order,但没有收到电子邮件,标头也未更改。所以我只用了一个单词进行检查:

pending_to_on-hold

感谢您 @LoicTheAztec ,但是为我指出了正确的方向。