WooCommerce 电子邮件 ID 和电子邮件通知的订单状态更改
问题:WooCommerce 电子邮件 ID 和电子邮件通知的订单状态更改
我正在尝试添加一个功能,该功能将记录通过订单状态更改发送的任何电子邮件。
在发送订单通知电子邮件之前,我可以使用一个挂钩吗?
解答
更新
所有负责触发电子邮件通知的可用钩子都位于WC_Emails``init_transactional_emails() 方法中,并且是动作钩子:
-
woocommerce_low_stock, -
woocommerce_no_stock, -
woocommerce_product_on_backorder, -
woocommerce_order_status_pending_to_processing, -
woocommerce_order_status_pending_to_completed, -
woocommerce_order_status_processing_to_cancelled, -
woocommerce_order_status_pending_to_failed, -
woocommerce_order_status_pending_to_on-hold, -
woocommerce_order_status_failed_to_processing, -
woocommerce_order_status_failed_to_completed, -
woocommerce_order_status_failed_to_on-hold, -
woocommerce_order_status_on-hold_to_processing, -
woocommerce_order_status_on-hold_to_cancelled, -
woocommerce_order_status_on-hold_to_failed, -
woocommerce_order_status_completed, -
woocommerce_order_fully_refunded, -
woocommerce_order_partially_refunded, -
woocommerce_new_customer_note, -
woocommerce_created_customer。
这些动作钩子中的每一个都可以排队或发送事务性电子邮件,您将在第 95 行或第 99 行的源代码中看到。
新订单通知的最后一件事,这有点奇怪,您将使用其中之一:
-
woocommerce_order_status_pending_to_processing_notification, -
woocommerce_order_status_pending_to_completed_notification, -
woocommerce_order_status_pending_to_on-hold_notification, -
woocommerce_order_status_failed_to_processing_notification, -
woocommerce_order_status_failed_to_completed_notification, -
woocommerce_order_status_failed_to_on-hold_notification,
如中所述,此WC_Email_New_Order代码源。
或者您可以使用位于status_transition()``WC_Order方法的 3 个挂钩之一来检测状态更改:
-
woocommerce_order_status_changed -
woocommerce_order_status_{$status_transition[from]}_to_{$status_transition[to]} -
woocommerce_order_status_{$status_transition[to]}
status_transition()包含在set_status()``WC_Order方法(还有update_status()method也调用set_status()_)_中。
更多推荐
所有评论(0)