从Woocommerce中的特定电子邮件中删除付款电子邮件说明

时间:2019-05-01 10:35:48

标签: php hook-woocommerce

我一直在尝试删除您在“ 付款说明”中为发票电子邮件的 COD付款指定的付款说明。该信息将自动包含在Woocommerce发送的所有订单电子邮件中。

因此,我进行了一些研究,最终在Stackoverflow上的这篇文章中找到了可以解决其他人问题的方法。“ 从WooCommerce的电子邮件通知中删除BACS指令Removing BACS instructions from email notiications in WooCommerce

这是特定的代码(已修改以用于COD付款):

add_action( 'woocommerce_email_before_order_table', function(){
if ( ! class_exists( 'WC_Payment_Gateways' ) ) return;

$gateways = WC_Payment_Gateways::instance(); // gateway instance
$available_gateways = $gateways->get_available_payment_gateways();

if ( isset( $available_gateways['cod'] ) )
    remove_action( 'woocommerce_email_before_order_table', array(     $available_gateways['cod'], 'email_instructions' ), 10, 3 );
}, 1 );

很遗憾,提供的代码对我不起作用。

会发生什么事

1。。我将该代码放在子主题文件夹中的functions.php文件中并保存。

2。。我在woocommerce订单页面中打开了一个单独的订单,然后选择订单操作->通过电子邮件将发票/订单详细信息发送给客户

不幸的是,结果是订单页面改为将部分电子邮件模板加载到窗口中,并且没有电子邮件发送出去。我必须在浏览器中向后按才能返回到订单页面。

我联系了Woocommerce支持论坛,回复我的人也发现了该代码,对其进行了修改以使其与cod一起使用,并表示它可以工作。但是,当我问她是否可以按照我做的相同步骤尝试一下是否可行时,我没有进一步的回应。我希望这里的人可以按照与我查看其是否有效相同的步骤对其进行测试。如果可以,那么显然是因为我的特定网站无法正常工作。

我还看到了以下线程中指定的“ gettext()”解决方案:Remove Cash On Delivery Instructions From WooCommerce Emails,但我希望,如果可能的话,不必使用它。

我有Woocommerce版本3.6.2,并且已经用其他2个早期版本测试了此代码,但无济于事。 希望我能在这里获得一些帮助或见解,以了解为什么它不起作用。我正在使用其他woocommerce钩子,没问题。

谢谢。

0 个答案:

没有答案