Я боролся с этим уже пару дней и проходил через каждый пост / комментарий / обсуждение / и т. Д. ... Я мог найти попытку найти рабочее решение.
Я хочу отправитьэлектронное письмо через пользовательский класс, которое расширяет WC_Email всякий раз, когда пользователь woocommerce обновляет свой адресЯ нашел различные ресурсы, объясняющие, как создавать собственные электронные письма wc ( skyverge был наиболее полезным ), и я успешно это сделал.У меня есть плагин, который добавляет пользовательскую электронную почту в WP-Admin-> WooCommerce-> Settings-> Emails.
Если я использую действие, которое уже является частью woocommerce_email_actions, например add_action( 'woocommerce_order_status_failed_to_processing_notification', array( $this, 'trigger' ) );
, и вручную изменяюСтатус заказа в бэкенде все работает просто отлично.
Проблема в том, что я хочу использовать add_action( 'woocommerce_customer_save_address', array( $this, 'trigger' ) );
, и, к сожалению, он никогда не срабатывает.
Основываясь на некоторых других потоках, я попытался добавить следующее вмой основной файл плагина
function new_woocommerce_email_actions( $actions ){
$actions[] = 'woocommerce_customer_save_address';
return $actions;
}
add_filter( 'woocommerce_email_actions', 'new_woocommerce_email_actions' );
Возможно, это должно позволить мне использовать действие в моем пользовательском классе, но не повезло.Я также попытался добавить другие действия без какого-либо успеха.Например, использование фильтра для добавления woocommerce_order_status_cancelled не будет срабатывать, если вручную изменить заказ на отмененный.Я изо всех сил пытаюсь выяснить, почему это не работает, и большинство из найденных тем старше 2 лет и мертвы, так что я здесь.Любая помощь или указатели будут с благодарностью.