1

amp-experiment文档演示了在 AMP 中跟踪多个实验。但是,如何amp-analytics正确配置?

在文档的报告部分,它提到了一个VARIANTS占位符,该占位符将替换为实验和变体名称的序列化列表。Google Optimize 团队的这个答案似乎表明它可以<amp-analytics>像这样添加到请求中:

<amp-analytics type="googleanalytics">
  <script type="application/json">
    {
      "vars": {
        "account": "..."
      },
      "requests": {
        "experiment": "${pageview}&exp=VARIANTS"
      },
      "triggers": {
        "pageview": {
          "on": "visible",
          "request": "experiment"
        }
      }
    }
  </script>
</amp-analytics>

但是,当我尝试此操作时,Google Optimize 不会记录任何访问。似乎要求experiment请求包含xid/ xvar(用于实验 ID/变体):

<amp-analytics type="googleanalytics">
  <script type="application/json">
    {
      ...
      "requests": {
        "experiment": "${pageview}&xid=${xid}&xvar=${xvar}"  <-- modified
      },
      "triggers": {
        "pageview": {
          "on": "visible",
          "request": "experiment",
          "vars": {                                          <-- added
            "xid": "skdjEjia23_1ksjd",                       <-- 
            "xvar": "VARIANT(my-experiment-name)"            <-- 
          }                                                  <-- 
        }
      }
    }
  </script>
</amp-analytics>

这很好用,但是我一次只能运行一个实验,因为xid/xvar是硬编码到特定实验的。

有什么想法可以运行多个实验吗?

4

1 回答 1

2

好的,我想通了。我在Google Optimize 论坛中得到了 Google Optimize 团队的答复。

VARIANTS变量被序列化的实验名称和变体替换,但 Google Analytics 显然需要的是实验ID和变体。因此,正确的解决方案是这样配置<amp-analytics>

<amp-analytics type="googleanalytics">
  <script type="application/json">
    {
      "vars": {
        "account": "..."
      },
      "requests": {
        "experiment": "${pageview}&exp=a1b2c3.VARIANT(my-first-experiment)!d4e5f6.VARIANT(my-second-experiment)"
      },
      "triggers": {
        "pageview": {
          "on": "visible",
          "request": "experiment",
        }
      }
    }
  </script>
</amp-analytics>

请注意,a1b2c3d4e5f6是实验 ID,而不是名称。它们后面的.VARIANT(...)部分表示为这些实验选择的变体的索引。不知道为什么首先使用 ID 和VARIANT()回调中的名称 ‍♂️</p>

于 2018-08-20T15:03:24.730 回答