将 e-mail 个收件人添加到 php 脚本中

add e-mail recipient into php script

无法在邮件服务器上为 Joomla 本身发送的授权邮件设置 CC 或转发,但我们想存储这些 e-mails。 问题是:如何在特定插件的 php 中设置它? (插件正在发送这些 e-mails) 代码:

        // send auth email to user who signed ...
    if ($signature_verification = (int)$this->settings->get('security.signature_verification', 0)) {
        // unpublished, visitor must verify it first
        $this->db->set('published', 0);

        $config = JFactory::getConfig();
        $from = $config->get('mailfrom', '');
        $fromname = $config->get('fromname', '');

        $recipient = (string)$this->db->get('email', '');

当我将最后一行替换为:$recipient = ('my@email.com') 时,我收到了该消息,但我想要一个给访客并且 copy 给我。 谢谢指教


好的,实际上这段代码启动了那封邮件的发送:

                if (
                $this->sendMail(
                    $from,
                    $fromname,
                    $recipient,
                    $subject,
                    $body
                ) !== true
            ) {
                throw new phpmailerException(JText::_('PLG_CONTENT_CDPETITIONS_EMAIL_SEND_FAILED'), 500);
            }

当我复制该代码,将其粘贴到下方,并将 $recipient 替换为我的 e-mail 时,它起作用了:我在两者上都传递了相同的消息地址。但我需要它像 CC(抄送)一样,并且在 header 的邮件中有原始收件人地址,这是交付给我的。

使用 Joomla 的内置邮件程序方法:

$msg = "This is my email message.";
$subject = "Database Update Email";
$to = (string)$this->db->get('email');
$config = JFactory::getConfig();
$fromemail = $config->get('mailfrom');
$fromname = $config->get('fromname');
$from = array($fromemail,$fromname);

$mailer = JFactory::getMailer();
$mailer->setSender($from);
$mailer->addRecipient($to);
$mailer->addRecipient('you1@yourdomain.com');
$mailer->addRecipient('you2@yourdomain.com');
$mailer->addCC('you3@yourdomain.com');
$mailer->addBCC('you4@yourdomain.com');
$mailer->setSubject($subject);
$mailer->setBody($msg);
$mailer->isHTML();
$mailer->send();

这应该使用 PHP 向任何你想要的人发送一封 HTML 电子邮件,并通过直接发送、CC 或 BCC 复制电子邮件中的其他用户,具体取决于你使用的方法。