
[Prestashop] Problème d’envoie d’email chez Infomaniak
Vous avez un problème pour envoyer des emails depuis votre prestashop 1.4 1.5 1.6, et vous êtes chez Infomaniak, voici la solution :
Pour faire fonctionner les mails avec la fonction mail() (et non SMTP) et ne plus obtenir l’erreur « Sending failed using mail() as PHP’s default mail() function returned boolean FALSE« :
- ouvrez le fichier NativeMail.php situé sous /tools/swift/Swift/Connection/
- trouvez public function __construct($additional_params= »-oi -f %s »)
- enlevez -f %s
- sauvegardez la modification
- ouvrez le fichier MailSend.php situé sous /tools/swift/Swift/Plugin/
- trouvez public function __construct($params= »-oi -f %s »)
- enlevez -f %s
- sauvegardez la modification
Si vous utilisez le package swiftMailer ouvrez le fichierclasses/Swift/Transport/MailTransport.php et à la ligne 35 remplacez private $_extraParams = ‘-f%s’; par private $_extraParams = ‘-oi’;
Pour tester si la fonction mail() marche, rendez-vous dans le back office de votre boutique => Paramètres avancés => Emails => TESTEZ VOTRE CONFIGURATION E-MAIL.
Source : https://www.infomaniak.com/support/faq/questions/_prestashop_configurer_une_nouvelle_installation-1141.html?language=french
Valérie
Bonjour,
j’ai toujours paramétré mon site, avec cette façon de faire, et depuis quelques temps, je ne trouve même plus le chemin pour arriver à modifier. Il ne me semble pas avoir fait des modifications.
Jérémy Christillin
Bonjour Valérie,
Merci pour votre message.
Avez-vous fait une mise à jour ? Il a deux fichiers à modifier qui se trouvent dans deux répertoires différents :
/tools/swift/Swift/Connection/ NativeMail.php
/tools/swift/Swift/Plugin/ MailSend.php
Si vous n’arrivez pas à corriger le problème, faites-le-nous savoir.
Valérie
j’ai bien tools/swift/ mais après je n’ai plus Swift mais classes/
quand j’ouvre classes/ j’ai Swift/ mais après pas de Connection ou Plugin
c’est vraiement étrange, par contre je vois que mes fichiers ont été modifié en date du 15.04.2016, donc il y a eu mise à jour.
J’avais cette version jusqu’à maintenant, là je me rends compte que j’ai swiftmailer, du coup, j’ai voulu changer les fichiers comme indiqué tout en bas, mais ça ne fonctionne toujours pas. y’a un progrès quand je fais le test d’email, j’ai un message d’erreur : Erreur : veuillez vérifier votre configuration et pas juste une petite roue qui tourne et qui tourne et qui tourne …
Jérémy Christillin
Ces fichiers sont essentiels dans le bon fonctionnement du Prestashop et surtout pour tout ce qui touche au email.
Je vous conseille de vérifier qu’elle est votre version de Prestashop et après de vous rendre sur la page dev :
https://www.prestashop.com/fr/versions-developpeurs#previous-version
Vous pouvez retrouver toutes les versions de Prestashop et télécharger celle qui correspond à votre version.
Après, vous dézippez l’archive et vous écrasez votre dossier swift. (faites une copie avant)
Ensuite, faites les modifications ci-dessus pour rétablie la config. pour les serveurs d’Infomaniak.
Ceci va régler le problème, mais des fichiers supprimés dans le core du Prestashop ce n’est pas normal.
Valérie
merci pour le conseil.
Par curiosité, une fois mon dossier dézippé, j’ai comparé le fichier swift 1.6.1.4 et le 1.6.1.5 (les 2 fichiers sont d’origine)
ils n’ont pas du tout la même « arborescence »
Du coup, la manipulation doit être différente, mais je ne suis pas une pro, mais j’aime quand même comprendre ce que je fais.
Jeremy Christillin
Bonjour,
Oui le système de mail Prestashop a été updaté avec la v1.6.1.5. Quand on regarde le changelog :
https://www.prestashop.com/en/developers-versions/changelog/1.6.1.5-stable
on a cette ligne :
[*] CORE : (85e6025) Update swift mailer
Je n’ai aucune boutique Prestashop en 1.6.1.5, mais à voir la technique ci-dessus ne fonctionne pas avec la dernière version de Prestashop :/
Je vais voir ce que je peux faire…