Skip to main content

Affichage de champs personnalisés, dans le mail Serial Mail to custom field

More
2 years 4 months ago #361615 by spaluxury
-- HikaShop version -- : 5.0.4
-- HikaSerial version -- : 4.0.2
-- Joomla version -- : 3.10.12
-- PHP version -- : 7.4.3

Bonjour,
Dans les réglages du mail "Serial Mail to custom field", j'arrive à récupérer le prénom du client qui achète le bon cadeau ainsi :
Code:
$mail->subject = 'Découvrez vite le cadeau SPA Luxury Paris que vient de vous offrir ' . $data->order->billing_address->address_firstname . ' ' . $data->order->billing_address->address_lastname;

ou ainsi dans le corps du mail :
Code:
<?php echo $data->order->billing_address->address_lastname; ?>

Mais je n'arrive pas à trouver le code à mettre pour récupérer mes champs personnalisé de type item que le c:ient renseigne à l'achat du bon cadeau
Il s'agit de 3 champs dans la table item (appelé table Article quand on crée le champs) :
- prenombeneficiaire champs de type texte
- maildubeneficiaire champs de type texte
- messagebeneficiaire champs de type zone de texte

J'arrive bien à récupérer ces datas dans la génération de mon image cadeau
Mais pas dans le message du mail

Dans le message standard du mail j'obtiens par défaut :
"Bonjour adressemail@gmail.com, ....

adressemail@gmail.com étant bien le mail renseigné dans mon chams personnalisé "maildubeneficiaire"

J'aimerai pouvoir obtenir :
Bonjour prenombeneficiaire

Voici le cadeau que vous offre prénom de l'acheteur (ça j'arrive à l'obtenir

Et voici le message qu'il vous adresse (via le champs messagebeneficiaire)

Mais je n'arrive pas à trouver le bon code pour appeler le contenu de mes champs personnalisés...

Please Log in or Create an account to join the conversation.

More
2 years 4 months ago #361617 by nicolas
Bonjour,

Les produits se trouvent dans $data->order->products et dans chaque object produit vous avez les champs item.
Par exemple:
Code:
foreach($data->order->products as $product) { echo $product->prenombeneficiaire; }

Please Log in or Create an account to join the conversation.

More
2 years 4 months ago #361626 by spaluxury
Merci Nicolas pour ton aide.
voici comment j'ai procédé.
1°) Dans la partie PRECHARGEMENT j'ai rajouté ce code pour récupérer les données de mes champs dans des variables ($prenomrecupere $messagerecupere) :
Code:
foreach($data->order->products as $product) { $prenomrecupere = $product->prenombeneficiaire; $messagerecupere = $product->messagebeneficiaire; }
2°) Dans la partie VERSION HTML voici les codes que j'ai rajouté
Code:
$mail->subject = $prenomrecupere . ' découvrez vite le cadeau que vient de vous offrir ' . $data->order->billing_address->address_firstname . ' ' . $data->order->billing_address->address_lastname;
Code:
<strong>Bonjour <?php echo $prenomrecupere; ?>,</strong>
Code:
<?php echo $data->order->billing_address->address_firstname . ' ' . $data->order->billing_address->address_lastname; ?> vous a envoyé une carte cadeau
Code:
<?php echo $data->order->billing_address->address_firstname . ' ' . $data->order->billing_address->address_lastname; ?> vous a également laissé le message suivant : <br/> <hr /><strong><?php echo $messagerecupere; ?></strong> <hr /> Vous retrouverez votre carte cadeau personnalisée ci-jointe, avec son QR code.

Please Log in or Create an account to join the conversation.

More
2 years 4 months ago - 2 years 4 months ago #361627 by spaluxury
Autrement, j'essai de comprendre les mécanismes des tag et des templates des e-mails.
Mais je ne trouve pas de documentation à ce sujet.
Comment créer un tag et y insérer une donnée de la base ? (ça me permettrait de vous partager ce tag)

D'autre part, je voudrais rajouter :
- le nom du produit acheté, son image et son lien vers la boutique
- les dates de validité du serial

Si je choisis le Template d'email "admin" :
- Est ce que je vais perdre tous mes réglages actuels de mon mail "Serial: Mail to custom field" ?
- Est ce que je vais pouvoir avoir accès au tags disponibles dans le mail "Notification de commande à l'administrateur" ?
Last edit: 2 years 4 months ago by spaluxury. Reason: Précisions

Please Log in or Create an account to join the conversation.

More
2 years 4 months ago #361663 by Jerome
Bonjour,

Dans le "preload" vous trouverez la définition de deux variables de type "array" : $vars et $texts.
Ces deux tableaux contiennent des entrées qui sont utilisables via les tags.
Le premier est plutôt pour les variables complexes (des objets, comme celui de la commande) ; alors que le deuxième est plutôt pour contenir du texte préformaté et traduit.

Cordialement,

Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Please Log in or Create an account to join the conversation.

Moderators: Obsidev
Time to create page: 0.186 seconds
Powered by Kunena Forum