我想从admin-new-order.php中删除帐单邮寄地址和送货地址。我的主题中已经有了它的副本。我能够删除电子邮件和电话号码,但我不能删除账单和运费。
要删除我执行此操作的电子邮件和手机
add_filter( 'woocommerce_email_customer_details_fields', 'custom_woocommerce_email_customer_details_fields' );
function custom_woocommerce_email_customer_details_fields( $totals ) {
unset(
$totals['billing_email'],
$totals['billing_phone']
);
return $totals;
}
我知道如果我完全删除了:
do_action( 'woocommerce_email_customer_details', $order, $sent_to_admin, $plain_text, $email );
它会删除所有内容,但我无法做到这一点,因为我需要在那里显示的笔记和交付时间(来自插件)。如果我删除整个内容,那么它会删除所有内容。
我已经尝试了
unset($totals['billing_first_name']);
这种情况有很多种,但它不起作用。
答案 0 :(得分:0)
在下面的所有电子邮件模板中都执行操作挂钩。 WC_Emails::email_address()
此功能代码用于在邮件中添加结算和送货详细信息。
/**
* @hooked WC_Emails::customer_details() Shows customer details
* @hooked WC_Emails::email_address() Shows email address
*/
do_action( 'woocommerce_email_customer_details', $order, $sent_to_admin, $plain_text, $email );
要从function.php
文件
function removing_customer_details_in_emails( $order, $sent_to_admin, $plain_text, $email ){
$wmail = WC()->mailer();
remove_action( 'woocommerce_email_customer_details', array( $wmail, 'email_addresses' ), 20, 3 );
}
add_action( 'woocommerce_email_customer_details', 'removing_customer_details_in_emails', 5, 4 );