gpt4 book ai didi

php - 为暂停的 Woocommerce 订单发送客户处理订单电子邮件通知

转载 作者:行者123 更新时间:2023-12-05 05:16:59 26 4
gpt4 key购买 nike

如果客户通过 bacs 网关下订单,则订单状态为“暂停”,并且客户会收到随附的包含银行详细信息的邮件通知。付款完成后,客户会收到另一封电子邮件 - 内容几乎与之前相同:customer_processing_order

我的目标:

禁用暂停订单的邮件(这是后端的默认功能)并发送实际上用于支付状态为“处理中”的付费订单的电子邮件-hold-status),同时为客户处理订单保留它。

换句话说:状态为“暂停”和“处理中”的新订单应共享相同的电子邮件模板。

这是否有可能实现?

到目前为止我的尝试相当糟糕(基于另一个有用的解决方案):

function unhook_new_order_processing_emails( $email_class ) {
// Turn off pending to processing for now
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
// Turn it back on but send the on-hold email
add_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_On_Hold_Order'], 'trigger' ) );
}

预先感谢您的帮助!

最佳答案

如果您禁用了客户“搁置”电子邮件通知,您可以使用以下方式使用“处理中”电子邮件模板发送搁置订单状态的电子邮件通知:

add_action('woocommerce_order_status_on-hold', 'email_order_processing_status_for_on_hold', 10, 2 );
function email_order_processing_status_for_on_hold( $order_id, $order ) {
WC()->mailer()->get_emails()['WC_Email_Customer_Processing_Order']->trigger( $order_id );
}

代码进入事件子主题(或事件主题)的 function.php 文件。测试和工作

关于php - 为暂停的 Woocommerce 订单发送客户处理订单电子邮件通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49743232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com