La boutique éphémère de l’Association
des Jardins et Vergers de l’Outre-Forêt.

Shortcodes conditionnels YayMail

1. Structure de base à mettre dans functions.php
 
add_filter(‘yaymail_customs_shortcode’, function ($shortcode_list, $yaymail_informations, $args = array()) {

$output = ‘<p>Valeur par défaut (aperçu éditeur)</p>’;

if (isset($args[‘order’]) && $args[‘order’] instanceof WC_Order) {
$order = $args[‘order’];
$pm = $order->get_payment_method();

// Condition selon le mode de paiement
if ($pm === ‘monetico’) {
$output = ‘<p>Paiement via Monetico</p>’;
} elseif ($pm === ‘wf_pay_later’) {
$output = ‘<p>Payer plus tard – instructions</p>’;
} else {
$output = ‘<p>Message générique</p>’;
}
}

// Nom du shortcode utilisé dans YayMail
$shortcode_list[‘[yaymail_custom_shortcode_mon_shortcode]’] = $output;

return $shortcode_list;
}, 10, 3);


2. Règles importantes
Nom du shortcode : doit commencer par [yaymail_custom_shortcode_nom]

Insertion dans YayMail : tu ajoutes un bloc texte avec ce shortcode.
Test : les shortcodes ne s’exécutent pas avec “Envoyer email test” → tester avec une vraie commande (ou aperçu basé sur un ID de commande).
$order->get_payment_method() → renvoie le slug du mode de paiement (ex. monetico, wf_pay_later).

3. Exemple rapide
Pour un shortcode qui affiche une mention spéciale seulement si le paiement = Monetico :

 
if ($pm === ‘monetico’) {
$output = ‘<p style= »color:green; »>Merci pour votre paiement via Monetico ✅</p>’;
}
4. Astuce
Tu peux créer autant de shortcodes que tu veux :

[yaymail_custom_shortcode_paiement_info]
[yaymail_custom_shortcode_livraison_info]
[yaymail_custom_shortcode_conditions]
Il suffit de dupliquer le bloc et changer le nom + les conditions.