php-在管理新订单电子邮件模板中添加已应用的优惠券代码-WooCommerce

让我清除我的问题:

>我已经下载了&激活了用于电子商务功能的WooCommerce插件.
>我想使用我的自定义插件在“管理员新订单电子邮件模板”中添加“应用的优惠券代码”.

现在:

>您能告诉我确切的挂钩或函数,它实际上是在设置新订单电子邮件模板,以便我将其覆盖吗?
>您能告诉我如何调用应用的优惠券代码,以便我将其显示在电子邮件模板中吗?

如果您能帮助我,那太好了.

解决方法:

可以使用挂在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文件中,或者在任何插件文件中.

经过测试并可以工作…

上一篇:php-从产品变体标题中删除属性值,并在单独的行上显示它们


下一篇:mysql-编写SQL查询以删除Woocommerce中的旧订单