个性化电子邮件中的内容列表

列表是组织信息以提高可读性的常用方法。 示例包括事件中的会话列表、产品列表或服务单列表。 Customer Insights – Journey 简化了创建列表和个性化列表的过程,只包含与收件人相关的信息,易于解析和操作。

建立一个列表

假设您想要创建一封包含客户拥有的产品列表的电子邮件。 遵循以下步骤:

  1. 创建一个列表占位符并选择您要用于列表的表格。

    显示创建列表占位符的屏幕截图。

  2. 接下来,添加要显示为列表 (1) 中的重复内容的任何属性(列): 您还可以指定按哪个属性对列表进行排序 (3) 以及要显示的项目数 (2)。 根据需要设置好列表后,选择保存并复制按钮保存列表,并访问提供代码供您复制的代码生成器。

显示要添加的列表属性的屏幕截图。

  1. 选择复制代码,然后将其插入电子邮件设计器中您希望包含此列表的位置:

    “列表(每个)”语句允许您格式化和显示给定表的重复内容。 您可以在设计器或 HTML 视图中添加创建这些语句所需的代码。 然后,您可以使用占位符对话框来指定要评估的列表,包括要显示的行数和行显示顺序。

    {{#each Products}}
      {{Products.Name}}
      {{Products.Description}}
    {{/each}}
    

    如果要将代码添加到 HTML,请确保在行 {{#each}} 和 {{/each}} 四周添加注释。

    <!-- {{#each Products}}  -->
      {{Products.Name}}
      {{Products.Description}}
    <!-- {{/each}}  -->
    

列表个性化 – 选择要包含在列表过滤器中的项目

有时,在电子邮件创建列表时,您只希望包含满足特定条件的项。 例如,关于订单货件的确认电子邮件应该只包括该货件中存在的项目,而排除在同一订单中但不在该货件中的项目。 同样,在每月新闻稿中,您可能希望只包含那些计划在未来 30 天内发生的事件。 这是通过定义一个列表过滤器来实现的,它本质上是一个在列表级别定义的条件,应用于每个列表项来决定该项是否应该被包含。

要过滤列表,请选择您已经在电子邮件中创建的列表,然后选择 + 添加列表过滤器

在本例中,电子邮件包含产品列表。 我们应用了一个过滤器,只包括那些当前“活跃”的产品如果您没有向此列表添加过滤器,整个列表将包含在电子邮件中(受指定的最大项目数限制)。 在这种情况下,该列表将包括所有产品,无论其状态如何。

显示要用列表过滤器添加的额外项目的屏幕截图。

条件语句可能包含一个条件,用于简单筛选;也可以包含多个条件,用于复杂筛选。

备注

为列表生成的代码不会改变,因为过滤条件存储在列表定义中,不需要作为内联代码。

许多个性化可以通过简单的带有过滤器的列表来实现。 然而,您不仅限于这些类型的个性化。 本节描述了可用于构建高级和更加个性化的列表的附加功能。 要使用这些功能,请选择高级选项链接。

选择“高级选项”后,应用程序界面会变为更高级的版本,支持许多高级功能。

显示可为列表个性化添加的高级选项的屏幕截图。

启用高级功能时:

  1. 已经选定的列显示为动态文本占位符。 这允许定义默认值并指定日期/时间格式。
  2. 添加列是通过添加列完成的,它允许为动态文本选择数据源的全部能力和灵活性(例如,遍历到相关的表)。
  3. 您可以添加项目级条件。

将列作为动态文本列出

在标准模式下,只能从数据源的属性列表中选择列表列(在上面的示例中,只有“产品”表的属性可用于选择列表列)。 在高级模式下,列显示为动态文本,因此动态文本提供的所有灵活性和功能对它们都是可用的,如下所示。

将列表列显示为动态文本的屏幕截图。

  1. 除了属性之外,还可以选择相关的表来引入附加信息。 在本例中,我们添加了一个列表列,它为每种产品添加了默认的价目表开始日期。

    备注

    选择相关表时,只能使用通过一对一多对一关系相关的表。 列表列中不支持通过多对多一对多关系相关的表(动态文本支持这些表)。

  2. 当列表项缺少数据时,可以指定默认值。

  3. 如果数据项属于日期/时间类型,您可以为其指定显示格式。

列表中的条件

前面描述的列表过滤器控制列表项是否应该被包含。 列表中的条件适用于列表项,当包含的列表项满足特定条件时,这些条件对于包含附加注释或内容非常有用。 例如,产品列表中可能有一些在某些方面很特别的产品 – 它们可能是新产品、即将停产、只有在某个日期后才能买到,等等。列表中的条件可用于添加此类标注和注释。 通过编辑 HTML,如果需要的话,您甚至可以添加可点击的链接或行动号召(例如,按钮)。

下面是一个示例,我们定义了一个条件来检查列表中包含的产品是否缺货:

显示在列表中添加条件的屏幕截图。

定义此类条件后,列表代码会更新,以提供一个基本的工作模板,供您根据需要进行定制:

显示为在列表中添加条件而生成的代码的屏幕截图。

例如,我们可以针对列表项添加注释“缺货”。 只有当列表项的条件为真时,才会包含此批注。

{{#each Products}}
  {{Products.Name}}
  {{Products.Description}}
  {{#if Products.OutofStock}}
  **Out of stock**
  {{/if}}
{{/each}}

默认情况下,代码生成器包含一个“else”部分,您可以根据需要保留或删除它。 如果定义了多个条件,代码生成器会将它们作为单独的条件包含在内(每个条件一个“if”语句)。 您可以根据需要更改代码以创建嵌套的“if”条件。

这里有一个例子,当数量小于 10 时,定义了一个附加条件“LowStock”。 为了正确标注低库存与缺货,需要如下所示嵌套“if”语句:

{{#each Products}}
  {{Products.Name}}
  {{Products.Description}}
  {{#if Products.LowStock}}
    {{#if Products.OutofStock}}
      **Out of stock**
    {{else}}
      **Low stock – order soon**
  {{/if}}
{{/each}}