在WooCommerce电子邮件通知上下载之前显示订单详细信息

时间:2020-05-04 11:05:39

标签: php wordpress woocommerce hook-woocommerce email-notifications

我有一个带有此挂钩的客户订单电子邮件

app.use(express.static(__dirname + '/public', { maxAge: 31557600000 }));

在此钩子中,我们有首先下载的电子邮件下载内容,然后是电子邮件订单详细信息。我需要先获取电子邮件订单详细信息,然后再下载以下内容,但我一生无法解决。

1 个答案:

答案 0 :(得分:1)

如果您查看WC_Emails constructor function,将会看到这2条相关的代码行:

add_action( 'woocommerce_email_order_details', array( $this, 'order_downloads' ), 10, 4 );
add_action( 'woocommerce_email_order_details', array( $this, 'order_details' ), 10, 4 );

基于该代码,以下挂钩函数将在订单详细信息之后设置订单下载部分:

add_action( 'woocommerce_email_order_details', 'wc_email_order_details_action_callback', 1 );
function wc_email_order_details_action_callback() {

    remove_action( 'woocommerce_email_order_details', array( WC()->mailer, 'order_downloads' ), 10 );

    add_action( 'woocommerce_email_order_details', array( WC()->mailer, 'order_downloads' ), 11, 4 );
}

代码进入活动子主题(或活动主题)的function.php文件。经过测试,可以正常工作。