-
-
Save corsonr/7370707 to your computer and use it in GitHub Desktop.
add_action( 'woocommerce_email_after_order_table', 'add_payment_method_to_admin_new_order', 15, 2 ); | |
/** | |
* Add used coupons to the order confirmation email | |
* | |
*/ | |
function add_payment_method_to_admin_new_order( $order, $is_admin_email ) { | |
if ( $is_admin_email ) { | |
if( $order->get_used_coupons() ) { | |
$coupons_count = count( $order->get_used_coupons() ); | |
echo '<h4>' . __('Coupons used') . ' (' . $coupons_count . ')</h4>'; | |
echo '<p><strong>' . __('Coupons used') . ':</strong> '; | |
$i = 1; | |
$coupons_list = ''; | |
foreach( $order->get_used_coupons() as $coupon) { | |
$coupons_list .= $coupon; | |
if( $i < $coupons_count ) | |
$coupons_list .= ', '; | |
$i++; | |
} | |
echo '<p><strong>Coupons used (' . $coupons_count . ') :</strong> ' . $coupons_list . '</p>'; | |
} // endif get_used_coupons | |
} // endif $is_admin_email | |
} | |
add_action( 'woocommerce_admin_order_data_after_billing_address', 'custom_checkout_field_display_admin_order_meta', 10, 1 ); | |
/** | |
* Add used coupons to the order edit page | |
* | |
*/ | |
function custom_checkout_field_display_admin_order_meta($order){ | |
if( $order->get_used_coupons() ) { | |
$coupons_count = count( $order->get_used_coupons() ); | |
echo '<h4>' . __('Coupons used') . ' (' . $coupons_count . ')</h4>'; | |
echo '<p><strong>' . __('Coupons used') . ':</strong> '; | |
$i = 1; | |
foreach( $order->get_used_coupons() as $coupon) { | |
echo $coupon; | |
if( $i < $coupons_count ) | |
echo ', '; | |
$i++; | |
} | |
echo '</p>'; | |
} | |
} |
Doesn't seem to work with latest Woocommerce since $order->get_used_coupons() will never return anything.
Great code, really helped me out, but i also added one line of code to show the amount of the coupon used:
echo $order->get_discount_to_display();
I added it right after the "foreach" function
how to send the coupon descritiption to the customer for order mail, can anyone help me on this it is urgent
Is there a way to show the amount of the coupon that was used? Currently using the code below and i want the amount of the coupon to be displayed as well. We use multiple coupons and want the amount for each to be displayed
`add_action( 'woocommerce_email_after_order_table', 'add_payment_method_to_admin_new_order', 15, 2 );
/**
- Add used coupons to the order confirmation email
*/
function add_payment_method_to_admin_new_order( $order, $is_admin_email ) {
if( $order->get_used_coupons() ) {
$coupons_count = count( $order->get_used_coupons() );
$i = 1;
$coupons_list = '';
foreach( $order->get_used_coupons() as $coupon) {
$coupons_list .= $coupon;
if( $i < $coupons_count )
$coupons_list .= ', ';
$i++;
}
echo '<p></p>';
echo '<p><strong>Credit(s) used (' . $coupons_count . ') :</strong> ' . $coupons_list . '</p>';
} // endif get_used_coupons
}`
Some great code, but should be looking much nicer ;)
(BTW: the 2 printout is intended to be different? If they should be the same, than the first function could call the secound within the first condition, thus leaving less space for making any mistake editing only one of them if needed...)