外部 Data Sources
将外部动态数据引入html
将外部数据源集成到电子邮件模板中可以实现高度个性化和动态的内容,从而提高参与度和相关性。本指南将引导您设置外部数据源并在您的电子邮件模板中使用它们。
外部数据源通过从外部API提取信息为您的电子邮件模板提供动态内容。这对于以下情况很有用:
基于外部源个性化内容
显示实时数据,例如从API获取的航班状态
通过传递参数并通过外部工具获取最终链接来自定义链接
创建一个外部数据源
在电子邮件中使用外部数据源
一旦正确设置了外部数据源,您可以使用其输出在电子邮件模板中使用液态模板语言。
使用外部数据源来获取内容
为了显示内容提要,您可以创建一个API,它以json格式提供多个内容提要项。示例如下:
上面的json提要可以在创建外部数据源时用作API URL。
创建后,您可以在电子邮件模板中引用它,如下所示:
首先添加一个html元素,并添加以下代码以通过名称获取外部数据源,即 {% datafetch "external-data-source-name" %}
在液态语言中使用for函数获取提要中的所有项目及其路径,即{% for <your-item> in dataFetchResponse.<your-json-path> %}。
如果您只有一个项目,则可能不需要这样做
假设sample-data-feed是外部数据源的名称,feed.items是在json提要中获取项目的路径,它看起来如下:

添加此项后,您可以添加任何图像、文本、按钮元素,并假设sample-data-feed结构如下来引用外部数据源:
{{item.title}} - 在文本元素中显示标题
{{item.description}} - 在文本元素中显示描述
{{item.link}} - 在按钮元素中添加链接
{{item.thumbnail}} - 在图像元素中添加图像URL源
现在添加另一个html块以结束外部数据源的获取和for 函数,示例如下
要预览您的电子邮件,您可以切换到预览,查看内容提要的外观
注意:如果您有一个静态提要,可以在此手动刷新,通过在刷新外部数据源下拉菜单中选择外部数据源来进行。

使用外部数据源以自定义URLs
您还可以在API URL中使用外部数据源和变量。这有助于向外部API传递任何参数,并返回响应以添加到电子邮件模板中
例如,您可以使用如下所示的API URL传递变量
https://api.bird.com/workspaces/?email={{email}}&referenceId={{referenceId}}&locale={{locale}}&name={{name}}

要在电子邮件模板中使用此外部数据源,您必须在liquid标签中提供变量的值:
将第一个html元素添加为 {% datafetch "name", "variable1", "variable1 value", "variable2, "variable2 value" %}
在下面的示例中,第一行避免了当电子邮件地址中有+号时引发的问题。第二行实际上启动了含变量的外部数据流。您可以给出静态值如 "value",或者可以提供变量引用如contact.attributes.userId。
GenerateLink是上述外部数据源的名称。
要渲染定制化链接,您可以使用一个按钮元素,链接定义为{{dataFetchResponse.url}},其中url包含来自您的API的响应

之后,添加如下的结束html元素: