【问题标题】:Javascript function to pass product ID into Facebook pixel event将产品 ID 传递到 Facebook 像素事件的 Javascript 函数
【发布时间】:2019-01-16 16:39:37
【问题描述】:

我正在尝试让 Facebook 上的动态重定向广告正常工作。我需要将产品 ID 值传递到“添加到购物车”像素事件中,以正确关联广告中的相关产品。

在产品页面上,ID 出现在 URL 中,因此我创建了一个变量来使用以下方法提取 ID:

function () {
  var urlPart = document.location.pathname.split('/')[3]; 
  return urlPart;
}

但是,对于“加入购物车”事件,产品 ID 仅在链接中可用。

例子:

<a href="/cart/add/AA1257" class="btn-add-cart btn btn-primary btnblock">Add to Cart</a>

其中“AA1257”是产品 ID。

所以我的问题是,如何在 Google 跟踪代码管理器中创建一个从 href 中提取该产品 ID 值的变量?我是一个完整的 .js 菜鸟,所以请放轻松 :)

我尝试创建这样的东西来提取 href,但之后我就迷路了......

<script>
  function myFunction() {
    var x = document.getElementsByClassName("btn-add-cart").getAttribute("href");
  }
</script>

【问题讨论】:

  • 嗨,迈克,感谢您提出关于 stackoverflow 的第一个问题!您的
  • 没有换行,那是我的格式不好。
  • getElementsByClassName 返回一个 HTMLCollection,您需要通过索引访问各个元素才能访问它们的属性。
  • “但在那之后我迷路了......” - 一旦你获得了对链接元素的引用,你就可以访问它链接到相同的部分 URL您可以使用位置对象访问它们的方式,请参阅developer.mozilla.org/en-US/docs/Web/API/… document.querySelector('.btn-add-cart').pathname 将让您访问 URL 的路径部分,文档中与该类的第一个链接链接到。

标签: javascript facebook variables google-tag-manager


【解决方案1】:

我收集到您在单击“添加到购物车”按钮时需要产品 ID,因此您不需要自定义 HTML 来获取 href - 如果您启用了内置点击变量,GTM 将免费为您提供 { {Click URL}}(如果链接包含任何标记,例如文本周围的跨度元素,您应该使用“仅链接”点击触发器,否则这可能不起作用)。

像之前一样,您可以拆分变量并获取最后一个元素:

elementAfterLastSlash = {{Click URL}}.split("/").pop();

(split通过分隔符创建数组,pop移除并返回最后一个元素)。

【讨论】:

  • 谢谢艾克。这是有道理的。
  • 如果这有帮助,那么您可以单击我的答案旁边的复选标记 - 这会给我的“声誉”加分,并从“未回答的问题”列表中删除该问题。
猜你喜欢
  • 1970-01-01
  • 2016-03-27
  • 2016-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-27
  • 1970-01-01
相关资源
最近更新 更多