Отправка e-mail средствами Joomla

Способ для Joomla 4.x и 5.x:

    use Joomla\CMS\Factory;
    $mailer = Factory::getMailer();
    $sender = array($app->getCfg('mailfrom'), $app->getCfg('fromname'));
    $mailer->setSender($sender);
    $mailer->addRecipient($user->email, $user->name);
    $mailer->addReplyTo(Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.');
    $body = "html-код тела письма";
    $mailer->isHTML(true);
    $mailer->setSubject('Тема письма');
    $mailer->setBody($body);
    $send = $mailer->Send();
    if($send !== true) file_put_contents(__FILE__.".log",$send->getMessage());
	

либо краткая форма (и без use):

    Joomla\CMS\Factory::getMailer()->sendMail($fromEmail, $fromName, $email, $subject, $convertedBody, true, null, null, $filename );
	

Первый способ:

    global $app;
    $mailer = JFactory::getMailer();
    $sender = array($app->getCfg('mailfrom'), $app->getCfg('fromname'));
    $mailer->setSender($sender);
    $mailer->addRecipient($user->email, $user->name);
    $mailer->addReplyTo(Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.');
    $body = "html-код тела письма";
    $mailer->isHTML(true);
    $mailer->setSubject('Тема письма');
    $mailer->setBody($body);
    $send = $mailer->Send();
    if($send !== true) file_put_contents(__FILE__.".log",$send->message);
	

Второй способ (Joomla 2.x):

    JUtility::sendMail($fromEmail, $fromName, $email, $subject, $convertedBody, true, null, null, $filename );
	

Третий способ (Joomla 3.x):

    JFactory::getMailer()->sendMail($from, $fromName, $recipient, $subject, $body, $mode = false, $cc = null, $bcc = null, $attachment = null, $replyTo = null, $replyToName = null);