WooCommerce - Send New Order / Customer Invoice Email from functions.php file WooCommerce - Send New Order / Customer Invoice Email from functions.php file wordpress wordpress

WooCommerce - Send New Order / Customer Invoice Email from functions.php file


I think you need such type of code.

add_action('woocommerce_thankyou', 'my_custom_new_order_email');function my_custom_new_order_email( $order_id ) {        $order = new WC_Order( $order_id );        $billing_address = $order->get_formatted_billing_address(); // for printing or displaying on web page        $shipping_address = $order->get_formatted_shipping_address();        $email = $order->billing_email;        $name = $order->billing_first_name.' '.$order->billing_last_name;        $billing_phone = $order->billing_phone;        $date = date('M d, Y');        $data   = '';        $data   .= "<table border='0' cellpadding='0' cellspacing='0' width='600'><tbody><tr>        <td valign='top' style='background-color:#fdfdfd'>        <table border='0' cellpadding='20' cellspacing='0' width='100%'>        <tbody>        <tr>        <td valign='top' style='padding:48px'>        <div style='color:#737373;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:14px;line-height:150%;text-align:left'>        <span>        <p style='margin:0 0 16px'>        You have received an order from $name. The order is as follows:        </p>        </span>        <h2 style='color:#557da1;display:block;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:18px;font-weight:bold;line-height:130%;margin:16px 0 8px;text-align:left'>        Order # $order_id ( $date )        </h2>        <div>        <div>";        if( sizeof( $order->get_items() ) > 0 ) {                       $data   .=    "<table cellspacing='0' cellpadding='6' style='width:100%;border:1px solid #eee' border='1'>            <thead>            <tr>            <th scope='col' style='text-align:left;border:1px solid #eee;padding:12px'>            Product            </th>            <th scope='col' style='text-align:left;border:1px solid #eee;padding:12px'>            Quantity            </th>            <th scope='col' style='text-align:left;border:1px solid #eee;padding:12px'>            Price            </th>            </tr>            </thead>            <tbody>";            $data   .= $order->email_order_items_table( false, true );                        $data   .=  "</tbody><tfoot>";            if ( $totals = $order->get_order_item_totals() ) {                $i = 0;                foreach ( $totals as $total ) {                $i++;                $label =    $total['label'];                $value = $total['value'];                $data .= "<tr>                <th scope='row' colspan='2' style='text-align:left; border: 1px solid #eee;'>$label</th>                <td style='text-align:left; border: 1px solid #eee;'>$value</td>                </tr>";                }            }            $data .= "</tfoot></table>";        }        $data .=                "<span>        <h2 style='color:#557da1;display:block;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:18px;font-weight:bold;line-height:130%;margin:16px 0 8px;text-align:left'>        Customer details        </h2>        <p style='margin:0 0 16px'>        <strong>Email:</strong>        <a href='mailto:' target='_blank'>        $email        </a>        </p>        <p style='margin:0 0 16px'>        <strong>Tel:</strong>        $billing_phone        </p>        <table cellspacing='0' cellpadding='0' style='width:100%;vertical-align:top' border='0'>        <tbody>        <tr>        <td valign='top' width='50%' style='padding:12px'>        <h3 style='color:#557da1;display:block;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:bold;line-height:130%;margin:16px 0 8px;text-align:left'>Billing address</h3>        <p style='margin:0 0 16px'> $billing_address </p>        </td>        <td valign='top' width='50%' style='padding:12px'>        <h3 style='color:#557da1;display:block;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-size:16px;font-weight:bold;line-height:130%;margin:16px 0 8px;text-align:left'>Shipping address</h3>        <p style='margin:0 0 16px'> $shipping_address </p>        </td>        </tr>        </tbody>        </table>        </span>        </div>        </td>        </tr>        </tbody>        </table>        </td>        </tr>        </tbody>        </table>";        $mailer = WC()->mailer();        $subject = 'New Customer Order';        $mailer->send( 'abc@example.com,def@example.com', $subject, $mailer->wrap_message( $subject, $data ), '', '' );     }

Hopefully It will work for you.

Thanks