pour des email plus jolis

27 messages dans ce sujet

Posté(e) · Signaler ce message

bonjour,

j'ai à la manière de la signature dans les templates email, j'ai ajouté le logo.

je récupère l'ensemble sans problème mais le souci vient du fait que dans la fonction send_mail il y a un paramètre $html_convert_url_to_links que lorqu'il est à true transforme les liens commençant par <a en liens cliquables et du coup pas les balises images.

Si en revanche on met $html_convert_url_to_links à false j'ai l'image mais pas les liens

existe t il un regex comme la fonction url2Link mais pour traiter les images ?

ensuite je pense qu'il faut s'inspirer de la fonction linkFormat ou bien peut on combiner les deux ? liens et images ?

en revanche par exemple pour le mail de téléchargement code=>download_product dont voici un extrait :

Votre lien pour le téléchargement : [WWWROOT]/modules/download/telecharger.php?id=[ORDER_ID]&key=[CLE]

le lien cliquable est bien présent dans le mail mais si on ajoute : [link=http://site.fr]lien[/link] seul le lien contenu dans le link est cliquable (sans aucune modification de la fonction send_email)

si on fait un mail uniquement avec le tag [link] je récupére le lien et l'image du logo ! du moment où le mail contient un lien commençant par <a je n'ai ni logo ni tag[link]

j'aimerai vraiment pourvoir ajouter le logo sur les emails pour la personnalisation et utiliser le tag [link]

encore merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

La manière dont est géré l'envoi d'emails est que si une partie est en HTML, tout doit être en HTML, ou si une partie est en bbcode, tout doit être en bbcode, ou si il n'y a pas de HTML ou de bbcode on remplace les URL par des liens automatiquement.

Je vous propose une modification pour avoir bbcode en plus d'autres parties en HTML :

Dans fonctions/email.php, dans function send_email :

remplacez

if ($html_convert_url_to_links && String::strpos($mail_content, '<a ') === false) {

if (linkFormat($mail_content) == $mail_content) {

// On rend cliquables les URL qui étaient bruts

$mail_content = url2Link($mail_content);

} else {

// On transforme les liens [link=] ... [/link] en balises HTML <a>

$mail_content = linkFormat($mail_content);

}

}

par

$mail_content = linkFormat($mail_content);

if ($html_convert_url_to_links && String::strpos($mail_content, '<a ') === false && String::strpos($mail_content, '<img ') === false) {

// On rend cliquables les URL qui étaient bruts

$mail_content = url2Link($mail_content);

}

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

bonjour Simon ,

j'ai remplacé le bout de code comme conseillé mais :

dans cet exemple de mail : Votre lien pour le téléchargement : [WWWROOT]/modules/download/telecharger.php?id=[ORDER_ID]&key=[CLE]

si je rajoute [link=http://eeee]lien[/link] je n'ai que link qui est cliquable

si je fais un test sans link, le lien ci-dessus pour le téléchargement reste en dur !

dans les deux cas j'ai bien l'image du logo s'affiche.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

La modification que je vous ai donnée permet d'avoir du bbcode en même temps que du HTML. Néanmoins à partir du moment où vous avez l'un ou l'autre les URL brutes ne sont plus remplacées. Donc vous devez mettre des balises HTML a ou des balises bbcode link partout ou nulle part. Comme vous avez ajouté une balise img qui contient une URL vous devez donc mettre un lien explicite sur l'URL que vous mentionnez.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

bonjour, magnifique comme toujours !

alors dans le mail de téléchargement il faut remplacer :

[WWWROOT]/modules/download/telecharger.php?id=[ORDER_ID]&key=[CLE]

par un tag créé dans la fonction send_email_product_download sans <a href

ou bien garder le lien en dur et utiliser le tag [link].

j'ai donc choisi de na pas changer la fonction

metrez-vous cette suggestion dans la nouvelle version ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

[WWWROOT]/modules/download/telecharger.php?id=[ORDER_ID]&key=[CLE]

par un tag créé dans la fonction send_email_product_download sans <a href

ou bien garder le lien en dur et utiliser le tag [link].

=> Vous pouvez mettre le lien dans une balise bbcode [link]

metrez-vous cette suggestion dans la nouvelle version ?
=> La modification de ma note sera bien dans la futur version.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonsoir,

Je cherche également à embellir les mails automatique.

Si j'ai suivi ce qu'a dit Simon, en mettant un code html dans un mail automatique, il devrait fonctionner du moment que tout est en html.

Dans mon cas, le formatage du texte fonctionne bien, mais les images ne s'affichent pas.

Comment faire pour intégrer des images ? Il y a-t-il des balises particulières?

Merci d'avance.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Si les emails sont envoyés en HTML, vous pouvez insérer une balise <img /> dans votre email, avec pour source un lien vers une image hébergée sur un serveur.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Si les emails sont envoyés en HTML

Il y a-t-il un option permettant de choisir le formatage des mail en html ou standard quelque part ?

Voici le code de mon email automatique de connexion d'un administrateur :


<img src="http://www.leds-boutique.fr/images/logo-peel.png" alt="alt" />

<p><font face="Arial"><b>Bonjour, </b></font></p>

<p><font face="Arial">Nous vous envoyons cet email &#224; la suite d'une connexion r&#233;ussie d'un administrateur sur votre site.</font></p>

<p><font face="Arial">Identifiant client : [USER]<br />IP de connexion : [REMOTE_ADDR]<br />Reverse DNS : [REVERSE_DNS]<br />Heure de connexion : [DATETIME] </font></p>

<p><font face="Arial">Cet email &#224; pour but de vous sensibiliser &#224; la s&#233;curit&#233; de votre boutique PEEL pour mieux la prot&#233;ger.</font></p>

Et voici ce que je reçois:

screenmail.jpg

A ce propos, comment formater la signature automatique ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Il y a-t-il un option permettant de choisir le formatage des mail en html ou standard quelque part ?

=> un paramètre de la fonction send_email permet de spécifié si le contenu est en HTML ou au format texte. Ce paramètre a pour valeur 'html' dans la quasi totalité des appels à cette fonction. Votre exemple permet de vérifier que le HTML est bien pris en compte dans les messages de connexions.

 

 

A ce propos, comment formater la signature automatique ?

La signature est également un template d'email éditable (code techique signature).

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Ok Merci pour ces infos.
Concernant mon image qui refuse de s'afficher ? avez vous une idée ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Avec quel client mail ou webmail consultez-vous cet email ? Pour certain d'entre eux, il faut activer manuellement l'affichage des images.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Avec Windows Live Mail, mais les images s'affichent sur d'autres mail reçus.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

J'ai copié/collé le code de votre email sur une boutique de test, et je me suis connecté avec un compte admin. L'email reçu n'a pas de problème d'affichage sur Thunderbird. Le code est donc bon, le problème semble être spécifique à Windows Live mail.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Ok, merci de l'info Simon !

Je vais trifouiller dans les options de windows live mail pour voir.
C'est embêtant pour les éventuels clients qui utilise cette messagerie par contre mais bon..
 

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Et bien j'ai réalisé le test aussi avec une autre boutique de test;
Et sur des adresses de messagerie différentes (hotmail, foxmail)

L'image est toujours manquante et un bout du code de l'image apparaît toujours dans le mail !

Je ne comprend pas comment ça a pu fonctionner chez vous.
Ma boutique de test est sur un autre domaine mais sur le même serveur, peut-être est-ce lié au serveur ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Vous pouvez dans un premier temps regarder le code source de l'email depuis vos clients mail(ou webmail) pour voir si le contenu est conforme à ce qui est renseigné dans la BDD. Le code HTML est peut-être altéré entre la récupération de l'email dans la BDD, et l'affichage sur le webmail.

Vous pouvez aussi faire un test d'inclusion d'une image dans un autre email envoyé par la boutique (dans un email de commande ou d'avis d’expédition par exemple) pour savoir si tous les emails sont concernés.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Effectivement, le code HTML n'est pas le même dans les emails:

Pour rappel, j'envoie ça :

 

<img src="http://www.leds-boutique.fr/images/logo-peel.png" alt="alt" />

et je reçois ça :

 

<img src="<a href="http://www.leds-boutique.fr/images/logo-peel.png" target="_blank">http://www.leds-boutique.fr/images/logo-peel.png</a>" border="0" alt="alt" />

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Sur la 6.3.1, les balises <a étaient ajoutés sur tous les liens, même ceux présent dans les images. La correction est présente dans la version 6.4.2. Dans la fonction send_email du fichier \lib\fonctions\emails.php Il faut remplacer

		if ($html_convert_url_to_links && String::strpos($mail_content, '<a ') === false) {
			if (linkFormat($mail_content) == $mail_content) {
				// On rend cliquables les URL qui étaient bruts
				$mail_content = url2Link($mail_content);
			} else {
				// On transforme les liens [link=] ... [/link] en balises HTML <a>
				$mail_content = linkFormat($mail_content);
			}
		}

par ce qui est fait dans la 6.4.2

		// On transforme les liens [link=] ... [/link] en balises HTML <a>
		$mail_content = linkFormat($mail_content);
		if ($html_convert_url_to_links && String::strpos($mail_content, '<a ') === false && String::strpos($mail_content, '<img ') === false) {
			// On rend cliquables les URL qui étaient bruts
			$mail_content = url2Link($mail_content);
		}

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Yes ! parfait c'était bien ça.

Merci m'sieur !

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

wouarf, cette solution a déjà été donnée par SIMON le premier post plus haut

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

wouarf, cette solution a déjà été donnée par SIMON le premier post plus haut

 

Certes !

Mais je pensais que c'était une réponse précise a ton problème, et non générique !

Il ne précisait pas que c'était un problème lié aux versions de peel.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Hello les amis !

j'ai donc attaqué l'embellissement des mes mails, en les codants en html.
Je rencontre cependant un petit souci de résultat sur certains tags.

J'en prend un comme exemple : [CLIENT_INFOS_BILL] dans "email_commandes"

D'origine, voila comment ce tags apparaît dans le mail :
NOM Prénom
Adresse
Code postal / Ville
France
06.XX.XX.XX.XX
mon_email@gmail.com

Lorsque j'utilise le même tags dans une page html, voila le résultat :
NOM Prénom Adresse Code postal / Ville France 06.XX.XX.XX.XX mon_email@gmail.com


Voila, je pense que vous avez compris mon problème.
Je ne comprend pas pourquoi l'affiche n'est plus en colonne, mais s'étale en ligne.
Si vous avez une idée ?

Autres question, il est dit dans le back office que d'autres tags sont disponibles, peut ont avoir la liste de ces derniers?
je cherche notamment à afficher, le numéro client et le mode de livraison choisi.

Merci beaucoup !

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Il faut ajouter la fonction nl2br sur la valeur du tag CLIENT_INFOS_BILL dans la fonction email_commande :

        $custom_template_tags['CLIENT_INFOS_BILL'] = String::htmlspecialchars_decode(nl2br($order_infos['client_infos_bill'], ENT_QUOTES));

 

Une correction plus général permettant de traiter l'ensemble de ces cas de figure sera appliqué dans la version final de la futur PEEL7.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour et merci,

J'ai le même souci avec ['BOUGHT_ITEMS'] et ça semble un peu plus compliqué, il y en a plusieurs... 
Que dois-je faire ?

Merci.

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping