从 WooCommerce 处理订单电子邮件通知中删除订单详细信息

Remove order details from WooCommerce processing order email notification

我正在尝试从 woocommerce 中的处理订单电子邮件中删除有关订单的 table 以上的信息。在 customer-processing-order.php 我找到了这个钩子:

/*
 * @hooked WC_Emails::order_details() Shows the order details table.
 * @hooked WC_Structured_Data::generate_order_data() Generates structured data.
 * @hooked WC_Structured_Data::output_structured_data() Outputs structured data.
 * @since 2.5.0
 */
do_action( 'woocommerce_email_order_details', $order, $sent_to_admin, $plain_text, $email );

如何从处理订单电子邮件通知中删除第一个挂钩函数(我想是为了获取空白订单信息)?

您可以使用以下方法从 WooCommerce 处理发送给客户的电子邮件通知中删除订单详细信息:

add_action( 'woocommerce_email_order_details', 'action_email_order_details', 2, 4 );
function action_email_order_details( $order, $sent_to_admin, $plain_text, $email ) {
    // Targeting "processing" order email notification sent to customer.
    if ( 'customer_processing_order' === $email->id ) {
        remove_action( 'woocommerce_email_order_details', array( WC()->mailer(), 'order_details' ) );
    }
}

代码进入活动子主题(或活动主题)的 functions.php 文件。已测试并有效。