Jump to content

Affichage conditionnel dans les e-mails de confirmation


Recommended Posts

Bonjour,

J'aimerai pouvoir modifier le template new_order.html (situé dans modules/ps_emailalerts/mails/fr) afin que ce dernier affiche ou non certains éléments. 

Pour faire simple, ne pas afficher le paquet cadeau s'il n'est pas sélectionné. 

Le code dans le fichier html est le suivant : 

<tr class="conf_body">
						<td bgcolor="#f8f8f8" colspan="4" style="border:1px solid #D6D4D4;color:#333;padding:7px 0">
							<table class="table" style="width:100%;border-collapse:collapse">
								<tr>
									<td width="10" style="color:#333;padding:0">&nbsp;</td>
									<td align="right" style="color:#333;padding:0">
										<font size="2" face="Open-sans, sans-serif" color="#555454">
											<strong>Paquet cadeau</strong>
										</font>
									</td>
									<td width="10" style="color:#333;padding:0">&nbsp;</td>
								</tr>
							</table>
						</td>
						<td bgcolor="#f8f8f8" colspan="4" style="border:1px solid #D6D4D4;color:#333;padding:7px 0">
							<table class="table" style="width:100%;border-collapse:collapse">
								<tr>
									<td width="10" style="color:#333;padding:0">&nbsp;</td>
									<td align="right" style="color:#333;padding:0">
										<font size="2" face="Open-sans, sans-serif" color="#555454">
											{total_wrapping}
										</font>
									</td>
									<td width="10" style="color:#333;padding:0">&nbsp;</td>
								</tr>
							</table>
						</td>
					</tr>

Je pense qu'il est possible de rajouter des conditions telles que si le wrappring est vide ou non sélectionné, ne pas afficher {total_wrapping} (ou la ligne du tableau récap).

Est-ce possible ? (j'ai vite regardé le site https://www.smarty.net/docsv2/en/language.function.if.tpl pour comprendre le if/then/else en smarty mais je ne vois pas où l'intégrer)

Il faudrait créer un fichier .tpl dans ce cas ? Mais comment et où ? :)

Merci pour votre aide précieuse.

Link to comment
Share on other sites

Bonsoir.

Tu ne peux pas faire ça en Smarty. Les templates de mail ne sont pas gérés par Smarty donc si tu mets du Smarty là-dedans ça ne va pas fonctionner.

Il faut penser les templates de mail comme du publipostage Word. Le système va récupérer le contenu du template puis faire du remplacement de "variables" par leurs valeurs.

Ex : pour {total_wrapping} il va remplacer cette chaine de caractères par la valeur qu'il connait.

Autrement dit si tu veux afficher ou masquer une ligne entière, il va falloir modifier le PHP du contrôleur ou du module qui est en charge de l'envoi du mail.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...