个性化使用案例:购物车放弃电子邮件 personalization-use-case-helper-functions

在此示例中,您将个性化电子邮件正文。 此消息面向在购物车中遗留商品,但尚未完成购买的客户。

您将使用以下类型的辅助函数:

  • upperCase 字符串函数,以大写字母插入客户的名字。 了解详情
  • each 帮助程序,用于列出购物车中的商品。 了解详情
  • if 帮助程序,在购物车中包含相关产品时插入特定于产品的注释。 了解详情

➡️ 在此视频中了解如何使用辅助函数

在开始之前,请确保您知道如何配置这些元素:

执行以下步骤:

步骤1:创建初始事件和相关历程 create-context

购物车内容是历程中的上下文信息。 因此,您必须先将初始事件和电子邮件添加到历程,然后才能将购物车特定的信息添加到电子邮件。

  1. 创建其架构包含 productListItems 数组。

  2. 将此数组中的所有字段定义为此事件的有效负荷字段。

    在中了解有关产品列表项数据类型的更多信息 Adobe Experience Platform文档.

  3. 创建从此事件开始的历程。

  4. 添加 电子邮件 历程的活动。

第2步:创建电子邮件 configure-email

  1. 电子邮件 活动,单击 编辑内容,然后单击 电子邮件设计工具.

  2. 从Email Designer主页的左侧面板中,将三个结构组件拖放到消息正文上。

  3. 将HTML内容组件拖放到每个新结构组件上。

步骤3:将客户的名字插入大写字母 uppercase-function

  1. 在Email Designer主页上,单击要添加客户名字的HTML组件。

  2. 在上下文工具栏上,单击 显示源代码.

  3. 编辑HTML 窗口,添加 upperCase 字符串函数:

    1. 在左侧菜单中,选择 辅助函数.

    2. 使用搜索字段查找“大写”。

    3. 从搜索结果中,添加 upperCase 函数。 为此,请单击旁边的加号(+) {%= upperCase(string) %}: string.

      表达式编辑器显示此表达式:

      code language-handlebars
      {%= upperCase(string) %}
      

  4. 从表达式中删除“string”占位符。

  5. 添加名字令牌:

    1. 在左侧菜单中,选择 配置文件属性.

    2. 选择 人员 > 全名.

    3. 添加 名字 表达式的令牌。

      表达式编辑器显示此表达式:

      code language-handlebars
      {%= upperCase(profile.person.name.firstName) %}
      

      在中了解有关人员姓名数据类型的更多信息 AdobeExperience Platform文档.

  6. 单击 验证,然后单击 保存.

  7. 保存消息。

第4步:插入购物车中的项目列表 each-helper

  1. 重新打开消息内容。

  2. 在Email Designer主页上,单击要在其中列出购物车HTML的内容组件。

  3. 在上下文工具栏上,单击 显示源代码.

  4. 编辑HTML 窗口,添加 each 辅助函数:

    1. 在左侧菜单中,选择 辅助函数.

    2. 使用搜索字段查找“each”。

    3. 从搜索结果中,添加 each 助手。

      表达式编辑器显示此表达式:

      code language-handlebars
      {{#each someArray as |variable|}} {{/each}}
      

  5. 添加 productListItems 数组的表达式:

    1. 从表达式中删除“someArray”占位符。

    2. 在左侧菜单中,选择 上下文属性.

      上下文属性 仅在历程上下文已传递到消息后可用。

    3. 选择 Journey Optimizer > 活动 > event_name,然后展开 productListItems 节点。

      在此示例中, event_name 表示事件的名称。

    4. 添加 产品 表达式的令牌。

      表达式编辑器显示此表达式:

      code language-handlebars
      {{#each context.journey.events.event_ID.productListItems.product as |variable|}} {{/each}}
      

      在此示例中, event_ID 表示事件的ID。

    5. 修改表达式:

      1. 删除“.product”字符串。
      2. 将“variable”占位符替换为“product”。

      此示例显示了修改后的表达式:

      code language-handlebars
      {{#each context.journey.events.event_ID.productListItems as |product|}}
      
  6. 将此代码粘贴到开始 {{#each}} 标记和结束 {/each}} 标记:

    code language-html
    <table>
       <tbody>
          <tr>
             <td><b>#name</b></td>
             <td><b>#quantity</b></td>
             <td><b>$#priceTotal</b></td>
          </tr>
       </tbody>
    </table>
    
  7. 为项目名称、数量和价格添加个性化令牌:

    1. 从HTML表中删除占位符“#name”。
    2. 从以前的搜索结果中,添加 名称 表达式的令牌。

    重复这些步骤两次:

    • 将占位符“#quantity”替换为 数量 令牌。
    • 将占位符“#priceTotal”替换为 总价 令牌。

    此示例显示了修改后的表达式:

    code language-handlebars
    {{#each context.journey.events.event_ID.productListItems as |product|}}
       <table>
          <tbody>
             <tr>
                <td><b>{{context.journey.events.event_ID.productListItems.name}}</b></td>
                <td><b>{{context.journey.events.event_ID.productListItems.quantity}}</b></td>
                <td><b>${{context.journey.events.event_ID.productListItems.priceTotal}}</b></td>
             </tr>
          </tbody>
       </table>
    {{/each}}
    
  8. 单击 验证,然后单击 保存.

步骤5:插入特定于产品的说明 if-helper

  1. 在Email Designer主页上,单击要插入注释的HTML组件。

  2. 在上下文工具栏上,单击 显示源代码.

  3. 编辑HTML 窗口,添加 if 辅助函数:

    1. 在左侧菜单中,选择 辅助函数.

    2. 使用搜索字段查找“if”。

    3. 从搜索结果中,添加 if 助手。

      表达式编辑器显示此表达式:

      code language-handlebars
      {%#if condition1%} render_1
         {%else if condition2%} render_2
         {%else%} default_render
      {%/if%}
      

  4. 从表达式中删除此条件:

    code language-handlebars
    {%else if condition2%} render_2
    

    此示例显示了修改后的表达式:

    code language-handlebars
    {%#if condition1%} render_1
       {%else%} default_render
    {%/if%}
    
  5. 将产品名称令牌添加到条件:

    1. 从表达式中删除“condition1”占位符。

    2. 在左侧菜单中,选择 上下文属性.

    3. 选择 Journey Orchestration > 活动 > event_name,然后展开 productListItems 节点。

      在此示例中, event_name 表示事件的名称。

    4. 添加 名称 表达式的令牌。

      表达式编辑器显示此表达式:

      code language-handlebars
      {%#if context.journey.events.`event_ID`.productListItems.name%}
         render_1
         {%else%} default_render
      {%/if%}
      

  6. 修改表达式:

    1. 在表达式编辑器中,在 name 令牌。

      请使用此语法,其中 product_name 表示产品的名称:

      code language-javascript
      = "product_name"
      

      在此示例中,产品名称为“Juno Jacket”:

      code language-handlebars
      {%#if context.journey.events.`event_ID`.productListItems.name = "Juno Jacket" %}
         render_1
         {%else%} default_render
      {%/if%}
      
    2. 将“render_1”占位符替换为注释文本。

      示例:

      code language-handlebars
      {%#if context.journey.events.`event_ID`.productListItems.name = "Juno Jacket" %}
         Due to longer than usual lead times on the Juno Jacket, please expect item to ship two weeks after purchase.
         {%else%} default_render
      {%/if%}
      
    3. 从表达式中删除“default_render”占位符。

  7. 单击 验证,然后单击 保存.

  8. 保存消息。

步骤6:测试并发布旅程 test-and-publish

  1. 打开 测试 切换,然后单击 触发事件.

  2. 事件配置 窗口中,输入输入值,然后单击 发送.

    测试模式仅适用于测试用户档案。

    电子邮件将发送到测试用户档案的地址。

    在此示例中,电子邮件包含有关Juno Jacket的注释,因为该产品位于购物车中:

  3. 验证没有错误,然后发布历程。

相关主题 related-topics

Handlebars函数 handlebars

用例 use-case

操作方法视频 video

了解如何使用辅助函数。

recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76