0

我正在尝试通过 mailjet 在我的 zend 应用程序上发送电子邮件。它可以工作,但无法加载所需的模板。代码:

 $config = array('ssl' => 'ssl',
                'port' => 465,
                'auth' => 'login',
                'username' => 'mailjet api username',
                'password' => '8mailjet api key');


            $transport = new Zend_Mail_Transport_Smtp('in-v3.mailjet.com', $config);
            $mail = new Zend_Mail();
            $mail->addHeader('X-MJ-TemplateLanguage',true);
            $mail->addHeader('X-MJ-TemplateID','validationV2'); 
          // This is the template I wanna use.(above)
            $mail->setFrom('test@test.org', 'You');
            $mail->addTo('test@test.org', 'Anybody');
            $mail->setSubject('My first email by Mailjet');
            $mail->setBodyHtml('wxxxxxxxxxxxxxxxxxxxxxxxxx');

            $mail->send($transport);

如果我能得到任何帮助,那就太好了!

4

2 回答 2

0

您可以尝试将模板的数字 ID 放入X-MJ-TemplateID. 如果仍然不起作用,请提交支持票

于 2017-09-07T07:29:25.047 回答
0

我遇到了同样的问题。可能是用于 SMTP 中继的 Mailjet v3 与 Zend 不兼容。
但是,我测试过的解决方法是在通过 composer 导入“mailjet/mailjet-apiv3-php”后直接使用 Mailjet API,如下所示:

    $mail = [
        'FromEmail' =>  'test@test.org',
        'FromName' => 'You',
        'To' => 'Anybody <test@test.org>,
        'MJ-TemplateID' => 1,
        'MJ-TemplateLanguage' => true
    ];

    $mj = new Client('mailjet api username', '8mailjet api key');
    $mj->post(Resources::$Email, ['body' => $mail]);

但是,我很好奇 Mailjet 对您的支持票的回答是什么!

于 2018-08-22T15:52:26.877 回答