Добавить примененный код купона в шаблон электронного письма администратора для нового заказа - WooCommerce

Позвольте мне прояснить свой вопрос:

  • Я загрузил и активировал подключаемый модуль WooCommerce для функций электронной коммерции.
  • Я хочу добавить «Примененный код купона» в шаблон электронной почты для нового заказа администратора, используя свой собственный плагин.

Теперь:

  1. Можете ли вы сказать мне точный крючок или функцию, которые на самом деле настраивают этот шаблон электронного письма с новым заказом, чтобы я переопределил его?
  2. Можете ли вы сказать мне, как вызвать примененный код купона, чтобы я отобразил его в шаблоне электронной почты?

Было бы здорово, если вы мне поможете.


person Surabhi Gupta    schedule 16.11.2017    source источник


Ответы (2)


Это можно сделать с помощью настраиваемой функции, подключенной к хуку действия woocommerce_email_order_details (например), которая будет отображать в уведомлениях электронной почты администратора используемые купоны в следующем порядке:

// The email function hooked that display the text
add_action( 'woocommerce_email_order_details', 'display_applied_coupons', 10, 4 );
function display_applied_coupons( $order, $sent_to_admin, $plain_text, $email ) {

    // Only for admins and when there at least 1 coupon in the order
    if ( ! $sent_to_admin && count($order->get_items('coupon') ) == 0 ) return;

    foreach( $order->get_items('coupon') as $coupon ){
        $coupon_codes[] = $coupon->get_code();
    }
    // For one coupon
    if( count($coupon_codes) == 1 ){
        $coupon_code = reset($coupon_codes);
        echo '<p>'.__( 'Coupon Used: ').$coupon_code.'<p>';
    } 
    // For multiple coupons
    else {
        $coupon_codes = implode( ', ', $coupon_codes);
        echo '<p>'.__( 'Coupons Used: ').$coupon_codes.'<p>';
    }
}

Код находится в файле function.php вашей активной дочерней темы (или темы) или также в любом файле плагина.

Проверено и работает ...

person LoicTheAztec    schedule 17.11.2017

Это потому, что $coupon_codes не является array (), определите его с помощью $coupon_codes=array();

person Vaibhav Kumar Goyal    schedule 13.12.2018