Ich habe seit einiger Zeit damit zu kämpfen. Ich habe eine benutzerdefinierte Komponente für Formulare erstellt, die die E-Mail-Funktionen von Joomla zum Senden von E-Mails verwendet. Ich habe alle Daten überprüft, um sicherzustellen, dass sie korrekt sind, aber die E-Mail wird einfach nicht gesendet und $mailer->Send()
gibt auch true zurück.
Wenn Sie alle Arten der Fehlerberichterstattung aktivieren, werden auch keine Fehler gemeldet.
$mailer = JFactory::getMailer();
$mailer->setSender($settings->sender);
$mailer->addRecipient($settings->to);
$mailer->setSubject($settings->subject);
$mailer->isHTML(true);
$mailer->setBody($settings->body);
if($send = $mailer->Send()){
//email worked
//print_r($settings);
//exit;
}else{
echo 'error';
exit;
}
Dies ist das Herzstück der Komponente, an die die E-Mail gesendet wird. Die $ -Einstellungen sind ein Objekt, mit dem ich die Informationen speichere, die ich zum Senden der E-Mail benötige, und nach dem Lesen als "erfolgreich" werden alle richtigen Informationen ausgegeben . Mandrill, der Dienst, den wir für E-Mails verwenden, erhält die E-Mail jedoch nie, was bedeutet, dass, soweit ich das beurteilen kann, keine Verbindung zu SMTP hergestellt werden konnte, was bedeutet, dass irgendwann in der Verbindung ein Fehler aufgetreten sein sollte, Joomla ihn jedoch nicht sieht.
Der gleiche Code funktioniert auf vielen anderen Websites. Die betreffende ist eine Subdomain und wird mit Hostgator gehostet. Ohne Fehler habe ich jedoch keine Ahnung, wo ich nach einer Lösung suchen soll.