所以,我正在做的是使用 Sendgdrid 的 API(PHP API 库)来发送电子邮件。发送部分有效,我只是想稍微修改一下以添加更多自定义功能,但我不确定是否可能。我正在使用 CodeIgniter,因此我跳过了一些代码,但您已经了解了总体思路。
我想要实现的是自定义这部分
我希望公司徽标出现在那里,而不是自动生成的 A。
我想实现这个:
我需要修改一些标题吗?
我的邮件发送流程是这样的(虚构数据):
$email = new \SendGrid\Mail\Mail();
$email->setFrom("[email protected]", "Sender Name");
$email->setSubject("Mail Subject");
$email->addTo($mail_data->email, $mail_data->name);
$email->addContent(
"text/html", $this->load->view('mails/recovery', $mail_data, TRUE)
);
$sendgrid = new \SendGrid($this->config->item('sendgrid_api_key'));
try {
$response = $sendgrid->send($email);
// do some stuff
} catch (Exception $e) {
// do some other stuff
}
所以邮件到达正确,一切顺利,但是有没有办法为邮件发件人添加头像之类的?比如公司的标志什么的。有没有办法通过代码来做到这一点?
我检查了有关创建谷歌帐户的信息,但是如果我使用noreply@地址怎么办?如果我使用不同的地址发送另一封邮件会怎样?我必须为每个帐户添加谷歌帐户吗?
因此,根据 Matthew Setter 对我的问题的评论,我进行了一些研究,解决方案是 BIMI DNS 记录。 BIMI 代表 消息识别品牌指标
需要满足以下条件:
您需要图标/徽标/图片的 SVG 版本,并且图像的最大重量必须为 32kb。该图像必须可公开访问,因此它必须类似于
https://www.yourdomain.com/images/icon.svg
您需要 BIMI 证书,这是棘手的部分,因为它们目前非常昂贵,Digicert 将它们作为验证标记证书出售,每年费用为 1,499.00 美元,所以对大多数人来说是行不通的。您还需要在您的域上的公共链接上托管证书,例如
https://www.yourdomain.com/cert/bimi.pem
您需要定义 DMARC 策略,如果没有,可能会显示警告/错误。
您需要添加如下结构的TXT记录
记录名称为:
default._bimi
v(版本)BIMI1:
v=BIMI1;
l(位置):
https://www.yourdomain.com/images/icon.svg
您的证书的(我认为是地址):
https://www.yourdomain.com/cert/bimi.pem
所以最终的结果是这样的:
TXT default._bimi "v=BIMI1;l=https://www.yourdomain.com/images/icon.svg;a=https://www.yourdomain.com/cert/bimi.pem" 3600
我希望证书颁发机构降低其价格,因为它对许多企业都有用,但 1,499.00 美元的证书对于普通企业主来说太贵了。
其他资源
您还可以使用这些工具来生成/验证 BIMI 记录。