将 Javascript 存储在 Cookie 中并稍后检索

Store Javascript in a Cookie and retrieve it later

我正在使用 Business Catalyst 系统(它使用 Liquid Markup/JSON)并且我正在尝试设置 eCommerce Google Analystics Tracking on it. I am also using JS Cookies 来存储信息。

此代码需要添加到 'Thank You' / 'Receipt' 页面。不幸的是,Business Catalyst 没有任何 JSON 可用于在收据页面上购买的每件商品...

因此我尝试使用 .set() 和 G.A 进行存储。结帐页面上的跟踪脚本,然后使用 .get().

在收据页面上检索它

这让我想到了我的问题,我需要将以下脚本存储在 cookie 中,稍后再检索它。我认为这与 G.A 的字符串化有关。脚本然后稍后解析它,但这是我的知识耗尽。

结帐页面上的代码

我想将信息存储在该页面的 cookie 中。

<script>
// Store eCommerce items in Cookie
Cookies.set("GAinfo", "

            ga('ecommerce:addItem', {
            'id': '00001',
            'name': 'Product Name 01',
            'sku': 'ABCD01',
            'category': 'Fruit',
            'price': '0.99',
            'quantity': '13',
            'currency': 'GBP'
            });

            ga('ecommerce:addItem', {
            'id': '00002',
            'name': 'Product Name 02',
            'sku': 'ABCD02',
            'category': 'Vegetables',
            'price': '1.95',
            'quantity': '6',
            'currency': 'GBP'
            });

");
 </script>

收据页上的代码

我想从该页面的 cookie 中检索信息,以便将其发送至 Google!

<script>
    var cGAinfo = Cookies.get('GAinfo');
    $('.GAinfo-container').html(cGAinfo);
</script>

如果有任何遗漏,请告诉我,谢谢!

这是我设置电子商务跟踪的方式:

{module_data resource="orders" version="v3" fields="id,shippingPrice,totalPrice,discountCode,discountRate,giftVoucherAmount" resourceId="{tag_orderid}" order="id" collection="trans"}
{module_data resource="orders" version="v3" subresource="products" resourceId="{tag_orderid}" fields="itemId,productId,catalogueId,units,unitPrice,totalPrice,description,product" order="productId" collection="products"}


<script>
    {% for prod in products.items -%}
    {module_data resource="catalogs" version="v3" fields="name" limit="1" where="\{'products.productId':'{{ prod.product.id }}'\}" order="id" collection="cat"}
    ga('ec:addProduct', {
      'id': '{{ prod.product.productCode }}',
      'name': '{{ prod.product.name }}',
      'category': '{% for item in cat.items -%}{{ item.name }}{% endfor -%}',
      'brand': '{{ prod.product.custom1 }}',
      'variant': '',
      'price': '{{ prod.totalPrice }}',
      'quantity': {{ prod.units }}
    });
    {% endfor -%}
    ga('ec:setAction', 'purchase', {
      'id': '{{ trans.id }}',
      'affiliation': '{{ trans.discountCode }}',
      'revenue': '{{ trans.totalPrice }}',
      'tax': '0',
      'shipping': '{{ trans.shippingPrice }}',
      'coupon': ''    // User added a coupon at checkout.
    });
ga('send', 'pageview');
</script>

只需将此代码复制粘贴到您的致谢页面即可。

确保你有

ga('require', 'ec');

在代码的主要部分。

关于 Google 分析实施的任何信息 - 只需询问即可。

如前所述,您不会将 JSON 存储到 cookie 等中以进行 Google 跟踪。 您不能将 JavaScript 或 JSON 存储到 cookie,无论如何都不是为此设计的。无论如何,您也会 运行 遇到不同域的问题。 所以忽略所有这些想法。

以上内容适用于较旧的通用分析,但您应该查看 Google 标签管理器和数据层。这是完成所有这一切的更新方法,而且会为您的网站带来更多更好的性能。