web-dev-qa-db-fra.com

Fonction mail Joomla 3.4.3

J'ai construit un composant personnalisé à l'aide de $mail = JFactory::getMailer();, comme indiqué sur cette page: https://docs.joomla.org/Sending_email_from_extensions .

J'utilise mailtrap.io Pour récupérer le courrier envoyé à des fins de test.

Cela a bien fonctionné pour toutes les versions de Joomla 3.4 jusqu’à la version 3.4.3, après quoi cela ne fonctionne plus. Le courrier est toujours envoyé, mais à moins que je ne mette le drapeau $mail->isHTML(true);, le corps du message ne contient pas de corps (sujet, réponse à, etc.).

Si je var_dump La variable $mail, Le contenu $body Semble correct - ce n'est pas que la variable n'est pas définie. Il semble que ce ne soit tout simplement pas sortir de la porte.

Quelqu'un at-il couru dans cela?

5
user101289

J'ai testé le cas sur sendgrid. Cela fonctionne bien avec les mails texte ou html.

    $mailer = JFactory::getMailer();
    $config = JFactory::getConfig();
    $sender = array(
            $config->get($this->get('mail_sender_email')),
            $config->get($this->get('mail_sender_name'))
    );
    $mailer->setSender($sender);        
    $mailer->isHtml(false); // Or, true
    $mailer->SetFrom($sender_mail, $sender_name);
    $mailer->AddAddress($recipient_mail);
    $mailer->Subject = 'A Subject';
    $mailer->Body = '<p>Body</p>';
    $mailer->Send();

Je suppose que vous devriez avoir une incompatibilité avec mailtrap.

1
Anibal