WooCommerce订阅电子邮件:正确的'woocommerce_email_order_details'挂钩函数参数是什么(用于修改“续订”电子邮件)?

时间:2019-08-27 15:07:22

标签: woocommerce hook-woocommerce subscription woocommerce-subscriptions

我无法找到正确的挂钩函数参数来修改/添加“ woocommerce_email_order_details”挂钩中的(WooCommerce预订专用)“ customer_renewal_invoice”和“ processing_renewal_order”电子邮件ID的电子邮件内容。

我已经为标准WooCommerce订单电子邮件进行了此工作(即修改电子邮件内容),但是根据LoicTheAztec(Get the email id in Woocommerce emails),Subscriptions插件使用了不同的挂钩函数参数;我只是不知道那是什么。

这是我所拥有内容的简化版本:

add_action ('woocommerce_email_order_details', 'custom_email_notification', 5, 4);
function custom_email_notification( $order, $sent_to_admin, $plain_text, $email ){
    if ( 'customer_processing_order' == $email->id || 'customer_invoice' == $email->id || 'customer_on_hold_order' == $email->id || 'customer_renewal_invoice' == $email->id || 'processing_renewal_order' == $email->id ){
        echo "Extra content here";
    }
}

前三个“标准” / WooCommerce电子邮件ID可以正常使用,但后两个(特定于WooCommerce订阅插件)则永远不会启用/触发;我知道这是因为我的钩子参数不正确,但是我不知道如何纠正它们。

我认为我需要的信息的实质在其他文章中也有所提及,但是我不能将所有内容都放在一起;按感知的相关性列出:

https://stackoverflow.com/a/42097450

https://stackoverflow.com/a/31677646

WooCommerce Subscription Cancellation Email to Customer

Stackoverflow上的用户提供了令人难以置信的帮助,使我的生活不断变得更加轻松/轻松。谢谢大家,并在此先感谢您可以提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

我认为您可能实际上想要woocommerce_subscriptions_email_order_details,它似乎从您想要的两封电子邮件中被调用(模板/电子邮件/customer-renewal-invoice.php和模板/电子邮件/ customer-processing-renewal-order。 php)。在这两种情况下,它都收到$order, $sent_to_admin, $plain_text, $email。但是,如果您想处理其他任何情况,有时会在其他地方用$subscription, $sent_to_admin, $plain_text, $email调用它。