对于WooCommerce中的每种产品,我都可以添加购买说明(screenshot). 此购买说明将显示在随后发送给客户的所有电子邮件中。通过定制PHP,我如何在一封特定的电子邮件上隐藏购买说明——在我的案例中是“订单完成”电子邮件。
有WooCommerce提供的钩子我可以使用吗?管理此电子邮件的主要WooCommerce模板是customer-completed-order.php
. 但这不允许我只隐藏特定物品的购买说明,它允许我隐藏所有物品的所有详细信息。
或者,是否有办法使用PHP检查我当前正在呈现的特定电子邮件,例如:。
if ($wc_email_template == "order_completed") {
// Execute this code.
}
如果我能做到这一点,那么我的问题就会得到解决。我之所以这么说,是因为存在另一个WooCommerce电子邮件模板,
email-order-items.php
. 在里面,我确实可以隐藏购买说明。但这适用于我不想要的所有电子邮件。因此,在这个模板中,如果我可以插入一个条件来检查所讨论的电子邮件是否是“订单已完成”的电子邮件,它将解决我的问题。
Possible Solution?
从这个
previous post, 也许我可以使用以下内容来检查该电子邮件是否为“订单完成”电子邮件。
$mailer = WC()->mailer();
$mails = $mailer->get_emails();
foreach ( $mails as $mail ) {
if ( $mail->id == \'customer_completed_order\' ) {
// Execute my desired code here.
}
}
}
但不确定这是否有效。此代码段似乎检查“customer\\u completed\\u order”电子邮件是否存在。但在我的例子中,我试图将该代码插入到PHP模板中,该模板创建了相同的电子邮件,因此听起来“customer\\u completed\\u order”电子邮件还不存在,这意味着该检查将始终失败。
谢谢