web-dev-qa-db-fra.com

JFactory a cessé de fonctionner dans Joomla 3.8, et maintenant?

Un client appelé aujourd'hui déplore que notre courrier automatisé (ils remplissent un formulaire et nous leur envoyons un code) ne fonctionne pas.

Bien sûr, c'est parce que mon code a toujours la classe JFactory et cherche ...

require ('libraries/joomla/factory.php');

... qui n'est plus depuis Joomla 3.8

J'ai vu cette réponse à un problème similaire , mais getMailer n'est pas nommé dans le fichier Github lié.

Que dois-je utiliser à la place des lignes suivantes?

require ('libraries/joomla/factory.php'); #I suppose nothing
$mail = JFactory::getMailer(); #I have no idea

Bien sûr, j'instancie le $mail objet avec tout le nécessaire pour utiliser

$mail->Send();

Donc, si cela ne fonctionne plus, j'apprécierais quelques conseils.

3
Firefighter

J'ai cherché JFactory au lieu de getMailer ou factory.php dans le tableau de conversion de classe mentionné dans la réponse liée à la question et j'ai résolu ce problème moi-même:

$mail = \joomla\CMS\factory::getMailer();

Exiger n'est plus ... nécessaire.

1
Firefighter