Отправлять заказ на конкретную почты в форме
В админ-панели у нас есть только одно поле с электронными письмами, куда мы хотим отправить заказ. У меня есть две почты [email protected], [email protected]. В форме оформления заказа у нас есть поле select и два option=>one, two.
По дефолту при отправке формы этот заказ отправляется на все почты.
Когда мы выбрали опцию one, заказ должен быть отправлен на[email protected], а опция two на [email protected].
Как я могу это сделать.
Ответы (1 шт):
Автор решения: WP Punk
→ Ссылка
Для замены получателя вы можете использовать хук woocommerce_email_recipient_{email_id}. Как вы показали на скрине, то нужное письмо имеет id new_order. Потом получаете поля и делаете что вам надо. Примерно так:
function my_woocommerce_email_recipient_new_order( $recipient ) {
// Add nonce
$select = filter_input( INPUT_POST, 'your-select', SANITIZE_TEXT_FIELD );
$email1 = filter_input( INPUT_POST, 'your-email1', SANITIZE_TEXT_FIELD );
$email2 = filter_input( INPUT_POST, 'your-email2', SANITIZE_TEXT_FIELD );
return 'option1' === $select ? $email1 : $email2;
}
add_filter( 'woocommerce_email_recipient_new_order', 'my_woocommerce_email_recipient_new_order' );

