J'utilise Woocommerce et essaie de personnaliser les emails. Dans le titre de l'e-mail, j'ai essayé d'utiliser {customer_first_name}
et {customer_name}
sans succès. Ils ne sont pas remplacés. Est-ce un bug ou les chaînes que j'utilise sont-elles incorrectes?
Les variables de modèle d'e-mail ne peuvent être utilisées que dans le corps des emails. Si vous souhaitez modifier les titres/objets de courrier électronique, vous devez utiliser le filtre correspondant et ajouter du code personnalisé à un fichier functions.php de thèmes enfants ou via un plugin personnalisé.
La documentation WooCommerce contient un extrait pour cela: https://docs.woocommerce.com/document/change-email-subject-lines/
Comme exemple pour l'ordre de traitement, vous utiliseriez:
add_filter( 'woocommerce_email_subject_customer_processing_order', 'change_processing_email_subject', 1, 2 );
function change_processing_email_subject( $subject, $order ) {
global $woocommerce;
$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
$subject = sprintf( 'Hi %s, thanks for your order on %s', $order->billing_first_name, $blogname );
return $subject;
}
Cela changerait le sujet en:
'Bonjour {prénom du client}, merci pour votre commande sur {nom du site}'