O objetivo final é utilizar o cabeçalho e o rodapé do Plugin WP Better Emails nos emails enviados pelo Woocomerce.
Para isso basta ter o plugin WP Better Emails devidamente instalado e configurado, e colar o seguinte código no seu functions.php
// verifica se o email está usando o cabeçalho e rodapé do Woocommerce add_action( 'woocommerce_email_header', function(){ add_filter( "better_wc_email", "__return_true" ); } ); // esconde o cabeçalho e rodapé do Woocommerce add_action( 'woocommerce_email_header', function(){ ob_start(); }, 1 ); add_action( 'woocommerce_email_header', function(){ ob_get_clean(); }, 100 ); add_action( 'woocommerce_email_footer', function(){ ob_start(); }, 1 ); add_action( 'woocommerce_email_footer', function(){ ob_get_clean(); }, 100 ); // insere o template criado no WP better email add_action( 'phpmailer_init', 'better_phpmailer_init', 20 ); function better_phpmailer_init( $phpmailer ){ // Retorna true se o cabeçalho do woocomemrce rodou if ( apply_filters( 'better_wc_email', false ) ){ global $wp_better_emails; // adiciona o template $phpmailer->Body = $wp_better_emails->set_email_template( $phpmailer->Body ); // substitui as variáveis $phpmailer->Body = apply_filters( 'wpbe_html_body', $wp_better_emails->template_vars_replacement( $phpmailer->Body ) ); } }
Essa função foi testada usando WP Better Emails 0.3, WordPress 4.5 e Woocommerce 3.1
Se você sabe uma maneira mais fácil para alterar os emails do Woocommerce, deixe um comentário!