#php #wordpress #woocommerce #orders #email-notifications
#php #wordpress #woocommerce #заказы #email-уведомления
Вопрос:
Я создал пользовательский статус на странице заказа Woocommerce. Кажется, это работает. Итак, я пытался отправить то же электронное письмо со статусом «На удержании», когда мой пользовательский статус выбран следующим образом:
add_filter( 'woocommerce_email_actions', 'filter_woocommerce_email_actions' );
function filter_woocommerce_email_actions( $actions ){
$actions[] = 'woocommerce_order_status_wc-attesa-pagamento';
return $actions;
}
add_action( 'woocommerce_order_status_wc-attesa-pagamento', 'enable_processing_to_on_hold_notification', 10, 2 );
function enable_processing_to_on_hold_notification( $order_id, $order ){
// Getting all WC_emails array objects
$mailer = WC()->mailer()->get_emails();
// Send the "On Hold" notification
$mailer['WC_Email_Customer_On_Hold_Order']->trigger( $order_id );
}
add_action( 'woocommerce_order_status_wc-attesa-pagamento', array( WC(), 'send_transactional_email' ), 10, 1 );
Но ничего не происходит!
Кто-нибудь может мне помочь?
Ответ №1:
В вашем коде ошибка, вам нужно заменить эту строку:
add_action( 'woocommerce_order_status_wc-attesa-pagamento', 'enable_processing_to_on_hold_notification', 10, 2 );
с помощью этого:
add_action( 'woocommerce_order_status_attesa-pagamento', 'enable_processing_to_on_hold_notification', 10, 2 );
и это должно сработать.