【发布时间】:2024-01-01 01:52:02
【问题描述】:
我正在尝试删除基于某些订单元数据的处理(或完成)电子邮件。
我正在使用 POS 系统并让客户通过客户发票电子邮件付款 - 初始订单状态为待付款。我想 a) 测试订单是否使用 pos,b) 删除“处理”或“完成”电子邮件。
我似乎无法让 if 语句逻辑工作。我很确定元键是“_pos”,值是“1”或“0”。
Here's my myphp screem shot of wp_postmeta
add_action( 'woocommerce_email', 'removing_POS_emails' );
function removing_POS_emails( $email_class, $order_id ) {
//Remove the Processing email for POS emails
$pos_test = get_post_meta( $order_id, '_pos', true );
if ( $pos_test == "1" ) {
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
}
}
我错过了什么吗?可以在 woocommerce_email 挂钩中使用 post meta 吗?
如果我得到正确的 if 语句,我相信我可以删除处理/完成电子邮件,甚至更改电子邮件类并创建自定义处理电子邮件。
【问题讨论】:
标签: php wordpress woocommerce hook-woocommerce email-notifications