【问题标题】:Zend smtp mailJet templateZend smtp mailJet 模板
【发布时间】:2018-08-22 23:52:26
【问题描述】:

我正在尝试通过 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);

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

【问题讨论】:

    标签: php zend-framework mailjet


    【解决方案1】:

    您可以尝试将模板的数字 ID 放入 X-MJ-TemplateID。如果还是不行,请提交support ticket

    【讨论】:

    • 试过了,结果一样,我开了一张票。
    【解决方案2】:

    我遇到了同样的问题。可能是用于 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 对您的支持票的回答是什么!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-19
      • 2021-11-01
      • 2010-11-08
      相关资源
      最近更新 更多