我正在尝试创建用于批量发送的Mailgun模板,并且该模板需要在 Handlebars (条件)中使用收件人变量,以确定要使用的语言,例如所以:
<div>
{{#if %recipient.eng%}}
Hello
{{else}}
Bonjour
{{/if}}
</div>
但是,在进行POST调用以创建上述模板时,我得到了错误响应:
"message": "template parse error: Parse error on line 2:\nLexer error\nToken: Error{\"Unexpected character in expression: '%'\"}"
Mailgun网站上没有任何文档使用通过手柄进行批量发送,因此可能无法实现。
有没有人成功做到这一点?
答案 0 :(得分:0)
问了Mailgun支持问题后,他们最近又回来了。
结论是不可能在车把表达式中使用收件人变量不幸的是。
答案 1 :(得分:0)
您需要将参与者变量复制为电子邮件的标准变量。请注意以-F v:eng开头的行。
curl -s --user 'api:YOUR_API_KEY' \
https://api.mailgun.net/v3/YOUR_DOMAIN_NAME/messages \
-F from='Excited User <YOU@YOUR_DOMAIN_NAME>' \
-F to=alice@example.com \
-F to=bob@example.com \
-F recipient-variables='{"bob@example.com": {"first":"Bob", "id":1, "eng": true}, "alice@example.com": {"first":"Alice", "id": 2, "eng": false}}' \
-F v:eng='%recipient.eng%'
-F subject='Hey, %recipient.first%' \
-F text='If you wish to unsubscribe, click http://mailgun/unsubscribe/%recipient.id%'
然后您将能够使用车把模板中的标准变量来访问它
<div>
{{#if %eng%}}
Hello
{{else}}
Bonjour
{{/if}}
</div>