Обновление статуса заказа Woocommerce из функций, но не по электронной почте - PullRequest
0 голосов
/ 01 марта 2019

На Woocommerce у меня есть форма, где клиенты могут подтвердить свой платеж и отправить его.После того как они нажали кнопку «Отправить», их статус заказа из режима ожидания переходит в режим обработки с этим кодом:

$order = new WC_Order( $order_id );

if( ( $order !== null ) ) {
    $order->update_status('processing', 'order_note');
}

Однако электронное письмо с обработкой не отправляется.Если я вручную изменяю статус из WordPress, он отправляет электронное письмо.Поэтому я попытался использовать этот код:

$mailer = WC()->mailer()->get_emails();

if($order->has_status( 'processing' )){
    $mailer['WC_Email_Customer_Processing_Order']->trigger( $order_id );

}

Этот код отлично работает для отправки электронного письма, но исходное письмо от WooCommerce не настроенное (я использую плагин для настройки электронной почты).Я попытался проверить email_id, но и оригинальная, и настроенная версия имеют один и тот же идентификатор.Если я изменяю статус с удержания на обработку вручную, он отправляет настроенное.

Я понятия не имею, как отправить настроенное электронное письмо с functions.php

Я пытался отправить двойные письмас

add_action( 'woocommerce_order_status_processing', 'my_function', 2, 10 );

, поэтому при изменении статуса на обработку клиенты получают электронную почту от изменения статуса вручную и от функций.Они получили 2 настроенных электронных письма, а не оригинальное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...