Jump to content

L'enregistrement de la newsletter plante


Recommended Posts

Bonsoir à tous

Depuis 2 jours, le module natif "bloc newsletter v.2.4.0 ne fonctionne plus sur le site de mon client (version 1.6.1.5). Le dernier client enregistré date du 16 octobre 2018.

Quand on rentre un mail et qu'on valide, l'erreur suivante s'affiche :
Catchable fatal error: Argument 1 passed to Swift_Mime_SimpleMessage::__construct() must be an instance of Swift_Mime_HeaderSet, none given in /home/gdegdesixp/www/tools/swift/classes/Swift/Mime/SimpleMessage.php on line 27

J'ai mis à jour le module qui avait besoin d'une mise à jour, mais ça plante toujours.

Qqun aurait une idée pour résoudre ce soucis ?

Merci d'avance

Link to comment
Share on other sites

16 hours ago, Eolia said:

Non c'est en 1.6.1.15 qu'elle a changé^^

Il faudrait le message d'erreur complet pour voir le fichier qui la provoque.

 

C'est à dire le message complet ?

J'avais mis le mode debug à true, et le seul message qui s'affiche est bien celui que j'ai marqué, dans une page blanche, c'est à dire :

Catchable fatal error: Argument 1 passed to Swift_Mime_SimpleMessage::__construct() must be an instance of Swift_Mime_HeaderSet, none given in /home/gdegdesixp/www/tools/swift/classes/Swift/Mime/SimpleMessage.php on line 27

Et pour info l'url de base du site ne change pas, j'espérais justement voir quel fichier plantait, mais je ne peux pas

Link to comment
Share on other sites

5 minutes ago, Eolia said:

Vous avez un module qui envoie un mail lors de l'inscription à ce bloc ? Car nativement, Prestashop se contente d'enregistrer l'adresse mail et basta.

 

Mon client utilise ensuite le module "Newsletter pro" pour envoyer les emails récupérés par le module " bloc newsletter "

Link to comment
Share on other sites

C'est bien le natif là, pas un ajouté avec le thème ?

dans le natif le code est comme ceci:

	protected function sendVerificationEmail($email, $token)
	{
		$verif_url = Context::getContext()->link->getModuleLink(
			'blocknewsletter', 'verification', array(
				'token' => $token,
			)
		);

		return Mail::Send($this->context->language->id, 'newsletter_verif', Mail::l('Email verification', $this->context->language->id), array('{verif_url}' => $verif_url), $email, null, null, null, null, null, dirname(__FILE__).'/mails/', false, $this->context->shop->id);
	}

Ce qui est conforme.

Les autres envois de mails fonctionnent ? (confirmations de commandes, messages du formulaire, etc ? )

Link to comment
Share on other sites

1 hour ago, Eolia said:

C'est bien le natif là, pas un ajouté avec le thème ?

dans le natif le code est comme ceci:


	protected function sendVerificationEmail($email, $token)
	{
		$verif_url = Context::getContext()->link->getModuleLink(
			'blocknewsletter', 'verification', array(
				'token' => $token,
			)
		);

		return Mail::Send($this->context->language->id, 'newsletter_verif', Mail::l('Email verification', $this->context->language->id), array('{verif_url}' => $verif_url), $email, null, null, null, null, null, dirname(__FILE__).'/mails/', false, $this->context->shop->id);
	}

Ce qui est conforme.

Les autres envois de mails fonctionnent ? (confirmations de commandes, messages du formulaire, etc ? )

 

Oui c'est le même code, et les mails commandes + contact fonctionnent parfaitement

Link to comment
Share on other sites

Comme je l'ai marqué, quand on valide le mail du bloc de la lettre d'information, on reste sur la même url, avec une page blanche et l'erreur :

Catchable fatal error: Argument 1 passed to Swift_Mime_SimpleMessage::__construct() must be an instance of Swift_Mime_HeaderSet, none given in /home/gdegdesixp/www/tools/swift/classes/Swift/Mime/SimpleMessage.php on line 27

si bien sûr on a mis à true le mode debug du fichier config/defines.inc.php

Le site : GdegDesign, le bloc est dans le footer (mais mode debug à false par contre)

Link to comment
Share on other sites

A moins d'intervenir sur votre boutique, non.

Votre problème est spécifique à votre installation donc difficile d'en dire plus.

Ce module natif fonctionne chez tout le monde sauf chez vous, donc changer de module ne va pas changer votre problème...

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...