如何为SendGrid模板使用布局?能否用单个HTML布局适配多邮件模板?
SendGrid模板布局使用相关问题解答
1. 如何为SendGrid模板使用布局?
- 创建布局模板:进入SendGrid后台的「Email API」→「Dynamic Templates」,点击「Create Template」选择「Layout」类型,编写包含通用元素(如页眉、页脚)的HTML,用
{{body}}作为具体邮件内容的占位符。 - 创建内容模板:在同一页面创建普通动态模板,编写邮件的具体业务内容(无需重复布局元素)。
- 关联布局与内容模板:编辑内容模板时,在右侧「Settings」面板中选择已创建的布局,保存后该内容模板将自动套用布局。
2. 是否可以为多个SendGrid邮件模板配置同一个HTML布局?
可以,一个通用布局可绑定任意数量的内容模板,操作步骤如下:
- 先创建好通用布局A。
- 逐个创建或编辑内容模板(如模板B、C等),在模板设置中选择布局A即可完成关联。
发送示例(仅指定模板B的ID)
使用SendGrid API发送时,只需传入模板B的ID,布局会自动生效,无需额外指定布局ID:
const sgMail = require('@sendgrid/mail'); sgMail.setApiKey('YOUR_SENDGRID_API_KEY'); const msg = { to: 'recipient@example.com', from: 'sender@example.com', templateId: 'd-xxxxxxxxx模板B的IDxxxxxxxxx', // 仅指定模板B的ID dynamicTemplateData: { username: 'John Doe', orderNumber: '12345' } }; sgMail.send(msg);
说明:由于模板B已与布局A关联,SendGrid会自动将模板B的内容插入到布局A的{{body}}占位符中,生成完整邮件内容。
内容的提问来源于stack exchange,提问作者Anton Putau
相关产品推荐
相关产品推荐

