Squarespace Index页面有一个主页和一个子页面。看起来如下:
Squarespace无法通过表单传递UTM参数,因此我正在Google跟踪代码管理器中使用脚本将UTM参数传递为Squarespace的SQF格式:
参考:How to track UTM data in Squarespace form submissions
在表单中,我具有隐藏的字段SQF_CAMPAIGN,SQF_TERM等。这些字段收集脚本解析的数据,并在提交表单时收集URL参数。
我在索引的每一页上都有一个表单块。看起来像这样:
从网站访问者的角度来看,它是一页和一个URL。从Squarespace的设计架构来看,它被认为是两页。
我要解决的问题是使URL参数与Form 2一起提交。目前Form 1正常运行。所有参数已发送。在发布之前,我开始测试另一种形式,并意识到未收集参数。我在多个页面上对此进行了测试。
我怀疑PAGE 2,FORM 2没有提取数据,因为它实际上是一个单独的URL。我仅使用仅带有SQF参数的URL进行了测试,并且能够提取PAGE 2,FORM 2上的数据。尽管,我需要UTM参数进行进一步的跟踪,所以仅使用SQF不能解决我的问题。我可能会误会。
理想情况下,用户点击Google付费搜索广告系列,因此所有UTM参数都将标记在着陆页URL上,并且当他们在页面上提交任何表格时,都会收集这些参数。
任何人都可以提供解决方案吗?
该问题是由于您所使用的代码段编写为仅处理一种形式而引起的。也就是说,假设给定页面上只有一种形式。它与Squarepace中的索引页体系结构无关。
可以通过在代码内添加循环来解决此问题,如下所示:
var i = formFields.length;
while (i--) {
if (formFields[i]) {
formFields[i].value = params[param];
}
}
original answer已使用此代码段更新。