You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PHP代码调用SendGrid的Design Library模板发送邮件

你找到的那行代码确实是正确的实现方向,SendGrid官方PHP SDK就是通过指定动态模板ID的方式调用已保存的设计模板发送邮件的,具体操作流程如下:

前置操作

Design Library中存储的设计无法直接通过代码调用,需要先转换为可调用的事务邮件模板:

  • 进入SendGrid后台的Design Library,找到你已创建的HTML模板
  • 点击模板右侧的操作按钮,选择创建事务模板,按提示完成保存后,你会得到一个以d-开头的模板ID,这个ID就是代码调用的核心参数
PHP代码实现步骤
  1. 首先通过composer安装SendGrid PHP SDK依赖:
    composer require sendgrid/sendgrid

  2. 基础发送代码示例:

<?php
require 'vendor/autoload.php';

$email = new \SendGrid\Mail\Mail();
// 配置发件人信息
$email->setFrom("你的发件邮箱地址", "发件人展示名称");
// 配置收件人信息
$email->addTo("收件人邮箱地址", "收件人名称");
// 填入你之前获取的事务模板ID,就是你找到的示例代码对应的用法
$email->setTemplateId("d-你自己的模板ID字符串");

// 如果模板内配置了{{变量名}}格式的动态占位符,通过下面的方法传入替换值,没有变量可省略这段
$email->addDynamicTemplateDatas([
    'username' => '用户昵称',
    'order_no' => '202400001'
]);

$sendgrid = new \SendGrid('你的SendGrid API密钥');
try {
    $response = $sendgrid->send($email);
    // 打印返回信息排查问题用
    print $response->statusCode() . "\n";
    print_r($response->headers());
    print $response->body() . "\n";
} catch (Exception $e) {
    echo '发送异常: '. $e->getMessage() ."\n";
}
注意事项
  • SendGrid API密钥需要在后台API Keys页面创建,必须给密钥开启Mail Send权限才能正常发信
  • 接口返回202状态码即代表请求成功,邮件已进入SendGrid的发送队列

内容的提问来源于stack exchange,提问作者Justin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 17:06:00