I’m looking to change the subject line for the email that goes to shop owner to have product name in.
I saw this code that puts customer first name
how can I adjust this code to have product name
/*
* goes in theme functions.php or a custom plugin
*
* Subject filters:
* woocommerce_email_subject_new_order
* woocommerce_email_subject_customer_processing_order
* woocommerce_email_subject_customer_completed_order
* woocommerce_email_subject_customer_invoice
* woocommerce_email_subject_customer_note
* woocommerce_email_subject_low_stock
* woocommerce_email_subject_no_stock
* woocommerce_email_subject_backorder
* woocommerce_email_subject_customer_new_account
* woocommerce_email_subject_customer_invoice_paid
**/
add_filter('woocommerce_email_subject_new_order', 'change_admin_email_subject', 1, 2);
function change_admin_email_subject( $subject, $order ) {
global $woocommerce;
$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
$subject = sprintf( '[%s] New Customer Order (# %s) from Name %s %s', $blogname, $order->id, $order->billing_first_name, $order->billing_last_name );
return $subject;
}
Maybe we just have to change here
$subject = sprintf( '[%s] New Customer Order (# %s) from Name %s %s', $blogname, $item->get_name, $order->billing_first_name, $order->billing_last_name );
return $subject;
}
2
Answers
Your actual code is really outdatedā¦ To add the purchased product name(s) (and quantity) to the subject of the New Order email notification sent to the admin, use the following:
Code goes in functions.php file of your child theme (or in a plugin). Tested and works.
Isn’t there one "%s" in excess in the line __(‘New Customer Order (# %s), %s, from %s %s’, ‘woocommerce’), ?