Skip to content

Instantly share code, notes, and snippets.

@woogists
Last active January 25, 2024 20:15
Show Gist options
  • Save woogists/76dc25206a08d18338a2b4dc5be192be to your computer and use it in GitHub Desktop.
Save woogists/76dc25206a08d18338a2b4dc5be192be to your computer and use it in GitHub Desktop.
Send coupons used in an order by email
/**
* Send an email each time an order with coupon(s) is completed
* The email contains coupon(s) used during checkout process
*
*/
function woo_email_order_coupons( $order_id ) {
$order = new WC_Order( $order_id );
if( $order->get_used_coupons() ) {
$to = '[email protected]';
$subject = 'New Order Completed';
$headers = 'From: My Name <[email protected]>' . "\r\n";
$message = 'A new order has been completed.\n';
$message .= 'Order ID: '.$order_id.'\n';
$message .= 'Coupons used:\n';
foreach( $order->get_used_coupons() as $coupon) {
$message .= $coupon.'\n';
}
@wp_mail( $to, $subject, $message, $headers );
}
}
add_action( 'woocommerce_thankyou', 'woo_email_order_coupons' );
@diegoALCE95
Copy link

The \n is not working for me. Anybody else? I had to concatenate it.

$message = 'A new order has been completed.' . "\n";

@helgatheviking
Copy link

$order = new WC_Order( $order_id ); should probably be $order = wc_get_order( $order_id );

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment