add_action('woocommerce_order_status_changed', 'custom_send_email_notifications', 10, 4 );
function custom_send_email_notifications( $order_id, $old_status, $new_status, $order ){
if ( $new_status == 'cancelled' || $new_status == 'failed' ){
$wc_emails = WC()->mailer()->get_emails(); // Get all WC_emails objects instances
$customer_email = $order->get_billing_email(); // The customer email
}
if ( $new_status == 'cancelled' ) {
// change the recipient of this instance
$wc_emails['WC_Email_Cancelled_Order']->recipient = $customer_email;
// Sending the email from this instance
$wc_emails['WC_Email_Cancelled_Order']->trigger( $order_id );
}
elseif ( $new_status == 'failed' ) {
// change the recipient of this instance
$wc_emails['WC_Email_failed_Order']->recipient = $customer_email;
// Sending the email from this instance
$wc_emails['WC_Email_failed_Order']->trigger( $order_id );
}
}
add_action( 'woocommerce_email_order_details', function( $order, $sent_to_admin )
{
if ( $sent_to_admin && ! defined('TST_ADMIN_EMAIL') ) {
define( 'TST_ADMIN_EMAIL', true );
}
}, 9, 2 );
add_filter( 'woocommerce_email_order_item_quantity', 'tst_filter_woocommerce_email_order_item_quantity', 10, 2 );
function tst_filter_woocommerce_email_order_item_quantity( $qty_display, $item )
{
if (
defined('TST_ADMIN_EMAIL')
&& true === TST_ADMIN_EMAIL
&& 'line_item' === $item->get_type()
) {
$product = $item->get_product();
$product_id = $product->get_id();
if ( $product_id == 6960 ) {
$qty_display = $qty_display * 2;
}
}
return $qty_display;
};