@Shaun ... Да, извините, я исправил свои маленькие ошибки, обновляя этот ответ ... спасибо
у иметь возможность изменить, кто получает уведомления по электронной почте от Woocommerce, в зависимости от роли пользователя при оформлении заказа.
Например, если пользователь вошел в систему как Оптовый клиент, то будет получено другое электронное письмо.
Я нашел, как изменить его, когда новый заказ завершен с помощьюwoocommerce_email_recipient_new_order
ловушка, но я не могу найти никаких ловушек, связанных с ошибками или отмененными уведомлениями.
add_filter( 'woocommerce_email_recipient_new_order', 'sv_conditional_email_recipient', 10, 2 );
function sv_conditional_email_recipient( $recipient, $order ) {
// Bail on WC settings pages since the order object isn't yet set yet
// Not sure why this is even a thing, but shikata ga nai
$page = $_GET['page'] = isset( $_GET['page'] ) ? $_GET['page'] : '';
if ( 'wc-settings' === $page ) {
return $recipient;
}
// just in case
if ( ! $order instanceof WC_Order ) {
return $recipient;
}
if ( in_array( 'wholesale_customer', (array) $user->roles ) ) {
$recipient .= ', [email protected]';
return $recipient;
}
return $recipient;
}
add_filter( 'woocommerce_email_recipient_new_order', 'sv_conditional_email_recipient', 10, 2 );
Может кто-нибудь помочь, пожалуйста?