WooCommerce - отправьте новый заказ по электронной почте на определенные адреса - PullRequest
1 голос
/ 21 апреля 2020

Мне нужно отправить электронное письмо с новым заказом на определенные адреса электронной почты, в зависимости от различных факторов в заказе - я начал с базового теста c и подумал, что следующая функция сделает это, но не повезло (не увидев CC: на отправленные письма). Что я делаю не так?

(да, я знаю, что следующий пример можно сделать, просто добавив вторичное электронное письмо в область «Настройки» - это всего лишь тест, который я планирую расширить, как только получу его рабочая)

add_filter( 'woocommerce_email_headers', 'additional_cc_email_recipient', 10, 3 );
function additional_cc_email_recipient( $headers, $email_id, $order ) {
    if ( $email_id === 'new_order' ){

        $cc_email = "mytestemail@test.com";

        $headers .= 'Cc: ' . $cc_email . '\r\n';
    }
    return $headers;
}

1 Ответ

1 голос
/ 22 апреля 2020

Попробуй так, у меня работает

function additional_cc_email_recipient( $header, $email_id, $order ) {
    if ( $email_id == 'new_order' ) {
        // Prepare the the data
        $formatted_email = utf8_decode('My test <mytestemail@test.com>');

        // Add Cc to headers
        $header .= 'Cc: '.$formatted_email .'\r\n';
    } else {
        // Prepare the the data
        $formatted_email = utf8_decode('My other test <myothertestemail@test.com>');

        // Add Cc to headers
        $header .= 'Cc: '.$formatted_email .'\r\n';     
    }

    return $header;
}
add_filter( 'woocommerce_email_headers', 'additional_cc_email_recipient', 10, 3 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...