我们一直在使用来自Woocommerce的电子邮件通知,并且它通过3.2的新更新打破了部分通知,而且我不知道如何修复。我看一下这个文件," class-wc-emails.php" (woocommerce / includes / class-wc-emails.php)生成电子邮件通知的地方,它有一条含糊不清的消息,说明"在3.2之前的版本中,这用于笔记,电话和电子邮件但是这些数据已经移动。"
我回顾一下我们保存的存档网站,它有这个代码,可以调用我希望添加回通知的笔记,电话和电子邮件
// Code prior to 3.2
$fields = array();
if ( $order->get_customer_note() ) {
$fields['customer_note'] = array(
'label' => __( 'Note', 'woocommerce' ),
'value' => wptexturize( $order->get_customer_note() ),
);
}
if ( $order->get_billing_email() ) {
$fields['billing_email'] = array(
'label' => __( 'Email address', 'woocommerce' ),
'value' => wptexturize( $order->get_billing_email() ),
);
}
if ( $order->get_billing_phone() ) {
$fields['billing_phone'] = array(
'label' => __( 'Phone', 'woocommerce' ),
'value' => wptexturize( $order->get_billing_phone() ),
);
}
我尝试将其包括在内,但似乎没有将笔记,电话和电子邮件添加到我的电子邮件通知中。有谁知道我需要做些什么来获取客户详细信息(笔记,电话和电子邮件)以显示在我们的新订单通知中?
答案 0 :(得分:1)
您可以通过woocommerce_email_customer_details_fields
过滤器添加要在订单电子邮件中显示的额外字段。
add_filter( 'woocommerce_email_customer_details_fields', 'add_woocommerce_email_customer_details_fields', 10, 3 );
function add_woocommerce_email_customer_details_fields( $fields, $sent_to_admin, $order ) {
if ( $order->get_customer_note() ) {
$fields['customer_note'] = array(
'label' => __( 'Note', 'woocommerce' ),
'value' => wptexturize( $order->get_customer_note() ),
);
}
if ( $order->get_billing_email() ) {
$fields['billing_email'] = array(
'label' => __( 'Email address', 'woocommerce' ),
'value' => wptexturize( $order->get_billing_email() ),
);
}
if ( $order->get_billing_phone() ) {
$fields['billing_phone'] = array(
'label' => __( 'Phone', 'woocommerce' ),
'value' => wptexturize( $order->get_billing_phone() ),
);
}
return $fields;
}