有没有办法在代码发送的电子邮件中添加个人资料图片

问题描述 投票:0回答:1

所以,我正在做的是使用 Sendgdrid 的 API(PHP API 库)来发送电子邮件。发送部分有效,我只是想稍微修改一下以添加更多自定义功能,但我不确定是否可能。我正在使用 CodeIgniter,因此我跳过了一些代码,但您已经了解了总体思路。

我想要实现的是自定义这部分

Example of what I want to modify

我希望公司徽标出现在那里,而不是自动生成的 A。

我想实现这个:

enter image description here

我需要修改一些标题吗?

我的邮件发送流程是这样的(虚构数据):

$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@地址怎么办?如果我使用不同的地址发送另一封邮件会怎样?我必须为每个帐户添加谷歌帐户吗?

php email sendgrid sendgrid-api-v3
1个回答
0
投票

因此,根据 Matthew Setter 对我的问题的评论,我进行了一些研究,解决方案是 BIMI DNS 记录。 BIMI 代表 消息识别品牌指标

需要满足以下条件:

  1. 您需要图标/徽标/图片的 SVG 版本,并且图像的最大重量必须为 32kb。该图像必须可公开访问,因此它必须类似于

    https://www.yourdomain.com/images/icon.svg

  2. 您需要 BIMI 证书,这是棘手的部分,因为它们目前非常昂贵,Digicert 将它们作为验证标记证书出售,每年费用为 1,499.00 美元,所以对大多数人来说是行不通的。您还需要在您的域上的公共链接上托管证书,例如

    https://www.yourdomain.com/cert/bimi.pem

  3. 您需要定义 DMARC 策略,如果没有,可能会显示警告/错误。

  4. 您需要添加如下结构的TXT记录

    1. 记录名称为:

      default._bimi

    2. v(版本)BIMI1:

      v=BIMI1;

    3. SVG 图像的
    4. l(位置):

      https://www.yourdomain.com/images/icon.svg

    5. 您的证书的(我认为是地址):

      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 记录。

© www.soinside.com 2019 - 2024. All rights reserved.