我正在使用以下网址发送电子邮件:https://github.com/sendgrid/sendgrid-nodejs/tree/master/packages/mail
我无法找到我如何添加<a href="[Unsubscribe]">Unsubscribe</a>
等效内容。这在此处记录:https://sendgrid.com/docs/Classroom/Basics/Marketing_Campaigns/unsubscribe_groups.html#-Using-a-Custom-Unsubscribe-Link
在网站上,您只需使用短代码[取消订阅],这在通过sendgrid / mail包发送电子邮件时不起作用。
答案 0 :(得分:6)
一个可以为我节省一两个小时的提示是:
可以在api json中发送以下内容以及其他内容:
"asm":{
"group_id":123,
"groups_to_display": [123],
}
然后可以在模板中使用以下变量:
<%asm_group_unsubscribe_raw_url%>
<%asm_preferences_raw_url%>
如果您想使事情保持简单,请不要包含以下变量,因为它会弄乱太多事情(从documentation中看不出来,所以显然我这样做并浪费了时间:():< / p>
"tracking_settings": {
"subscription_tracking": {
"enable": true,
"substitution_tag": "[unsubscribe_url]"
}
}
只需以原始格式使用它们,就可以了。
答案 1 :(得分:4)
由于您使用代码发送,因此它是一种“交易”类型的消息。您需要在帐户级别启用订阅跟踪过滤器(通过[UI](订阅跟踪设置)或API),或在发送邮件时将其启用,作为{{{ 3}},在tracking_settings
下。
重要的是要注意你不能混合它们。如果您在mail/send
API调用中定义任何,则需要在该调用中为订阅跟踪定义所有。 SendGrid不会查看邮件级别的某些设置,也不会查看帐户级别的某些设置。
大多数用户只会在帐户级别进行设置。在那里,您可以自定义HTML&amp;取消订阅页脚的文本,自定义登录页面的HTML,或重定向登陆到您选择的URL,这将使收件人在URL字符串中发送?email=test@domain.com
以供系统捕获。您还可以定义“替换标记”,例如[%unsubscribe%]
,以便您可以在HTML中的任意位置放置网址。
答案 2 :(得分:3)
https://app.sendgrid.com/>抑制>取消订阅组>创建新组
使用node.js发送电子邮件
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(SENDGRID_API_KEY);
const tags = { invitedBy : Alex }
const msg = {
to: email,
from: { "email": SENDER_EMAIL,
"name": SENDER_NAME
},
templateId: TEMPLATE_ID,
dynamic_template_data: {
Sender_Name: name,
...tags
},
asm: {
group_id: 123,
groups_to_display: [
123
],
},
};
await sgMail.send(msg);
答案 3 :(得分:1)
最好的方法是使用组取消订阅。
"asm":{
"group_id":544,
"groups_to_display": [544, 788],
}
不幸的是,Sendgrid的取消订阅链接并不像它们那样简单。 here
对其进行了详细说明答案 4 :(得分:-1)
就像这个海报所说的那样,最简单的方法是通过https://app.sendgrid.com/settings/tracking上的GUI来做到这一点。 (设置->跟踪->订阅跟踪)