WooCommerce - удаление определенных элементов из woocommerce_email_order_details

Как удалить только первую строку (название продукта, количество и цена) из woocommerce_email_order_details?

Вот как сейчас выглядит электронная почта

В настоящее время admin_new_order.php содержит следующий код

<?php    

 if ( ! defined( 'ABSPATH' ) ) {
    exit;
 }


 do_action( 'woocommerce_email_header', $email_heading, $email ); ?>

 <p><?php printf( __( 'You have received an order from %s. The order is as follows:', 'woocommerce' ), $order->get_formatted_billing_full_name() ); ?></p>

 <?php


 do_action( 'woocommerce_email_order_details', $order, $sent_to_admin, $plain_text, $email );


 do_action( 'woocommerce_email_order_meta', $order, $sent_to_admin, $plain_text, $email );


 do_action( 'woocommerce_email_customer_details', $order, $sent_to_admin, $plain_text, $email );


 do_action( 'woocommerce_email_footer', $email );

woocommerce_email_order_details - это функция, которая создает все элементы, которые вы видите на картинке. Я знаю, что не следует удалять всю функцию, потому что другие функции могут использовать эту функцию. Итак, как мне получить доступ только к первой строке, чтобы я мог ее удалить?


person Levy    schedule 01.05.2017    source источник


Ответы (1)


Попробуй это

function so_39251827_remove_order_details( $order, $sent_to_admin, $plain_text, $email ){
    $mailer = WC()->mailer(); // get the instance of the WC_Emails class
    remove_action( 'woocommerce_email_order_details', array( $mailer, 'order_details' ), 10, 4 );
}
add_action( 'woocommerce_email_order_details', 'so_39251827_remove_order_details', 5, 4 );
person Sunny Khatri    schedule 01.05.2017