我正在使用Mandrill自己的PHP库来预览和发送模板化的电子邮件。我已经通过替换标记验证了发送按预期工作,但template->render
方法返回(正确)模板而不用替换标记。搜索结果没有相关结果,所以我只能假设我做错了什么。我发现的唯一类似问题是this,没有答案。
渲染方法的文档是here。
以下是请求和响应。
请求
{
"template_name": "welcome",
"template_content": [
{
"name": "member_first_name",
"content": "James"
},
{
"name": "useLogo",
"content": true
}
],
"merge_vars": [
{
"name": "member_first_name",
"content": "James"
}
{
"name": "useLogo",
"content": true
}
],
"key": "blah"
}
响应:
{
"html": "<p>Dear {{member_first_name}},</p>" [etc]
除非我误解了API文档,{{member_first_name}}应该替换为我发送的值,就像发送电子邮件一样?
预览/发送电子邮件的两个不同的调用如下:
$mandrill->messages->sendTemplate($template_name, $template_content, $message, false);
$mandrill->templates->render($template_name, $template_content, $template_content, false);
其中...
$template_content = array(
array(
'name' => 'member_first_name',
'content' => $memberFirstName
),
array([etc]
答案 0 :(得分:0)
我试图用Java在不同但相关的项目中实现这一点,并遇到了同样的问题。事实证明,Mandrill API在渲染模板时不支持使用Handlebar标记。我最初将其作为Java库的问题提出,但这适用于任何库或直接API调用。
更多信息,包括Mandrill的门票号码,可以在这里找到: