Google Analytics 电子商务跟踪

搬瓦工机场JMS

通过电子商务跟踪,您可以衡量网站产生的交易次数和收入。在典型的电子商务网站上,当用户在浏览器中点击“购买”按钮时,用户的购买信息就会发送给执行交易的网络服务器。如果成功,服务器会将用户重定向至提供交易详情和购买收据的“谢谢”页面或收据页面。您可以使用analytics.js库将“谢谢”页面中的电子商务数据发送到Google Analytics(分析)。

可以使用analytics.js发送两种类型的电子商务数据:交易数据和商品数据。

交易数据

交易是指发生在您网站上的完整交易,包括以下值:

类型 必需 说明
ID String 交易ID(例如1234)。
Affiliation String 发生此交易的商店或联属机构(例如Acme Clothing)。
Revenue Currency 与当次交易关联的总收入或总计金额(例如11.99)。此值包含运费、税费或其他要计入revenue的总收入调整值。
Shipping Currency 指定交易的总运费(例如5)。
Tax Currency 指定交易的税款总额(例如1.29)。

商品数据

商品指购物车里的单款产品,包括以下值:

类型 必需 说明
ID Number 交易ID。此ID将商品与其所属的交易关联在一起(例如1234)。
Name String 商品名称(例如粉色绒毛小兔)。
SKU String 指定SKU或商品代码(例如SKU47)。
Category String 商品所属类别(例如聚会玩具)。
Price Currency 每件商品的单价(例如11.99)。
Quantity Number 在交易中购买的商品数量。如果传递到此字段的是非整数值(例如1.5),将舍入为最接近的整数值。

实现

加载电子商务插件

为减小analytics.js库的规模,增强型电子商务跟踪不在默认库中提供,而是以需要在使用前加载的插件模块的形式提供。

要加载电子商务插件,请使用以下命令:

ga('require', 'ecommerce');

添加交易

插件加载后就会创建透明的购物车对象。您可以将交易和商品数据添加到购物车,并在完全配置后一次性发送全部数据。

您可以使用

ga('ecommerce:addTransaction', {  'id': '1234',                     // Transaction ID. Required.  'affiliation': 'Acme Clothing',   // Affiliation or store name.  'revenue': '11.99',               // Grand Total.  'shipping': '5',                  // Shipping.  'tax': '1.29'                     // Tax. 'currency': 'EUR'  // local currency code.});

命令向购物车添加交易数据:

ga('ecommerce:addItem', {  'id': '1234',                     // Transaction ID. Required.  'name': 'Fluffy Pink Bunnies',    // Product name. Required.  'sku': 'DD23444',                 // SKU/code.  'category': 'Party Toys',         // Category or variation.  'price': '11.99',                 // Unit price.  'quantity': '1'                   // Quantity. 'currency': 'GBP' // local currency code.});

添加商品

下一步,要向购物车添加商品,您可以使用

ecommerce:addItem

命令:

ga('ecommerce:addItem', { 'id': '1234', // Transaction ID. Required. 'name': 'Fluffy Pink Bunnies', // Product name. Required. 'sku': 'DD23444', // SKU/code. 'category': 'Party Toys', // Category or variation. 'price': '11.99', // Unit price. 'quantity': '1' // Quantity.});

发送数据

最后,在购物车中配置所有电子商务数据后,您可以使用 ecommerce:send  命令向Google Analytics(分析)发送数据:

ga('ecommerce:send')

此命令将仔细检查购物车中的每笔交易和每件商品,并将相应的数据发送给Google Analytics(分析)。完成后,系统将清空购物车并准备发送新交易的数据。如果发出的是之前的 ecommerce:send命令,系统只会发送新的交易和商品数据。

大部分电子商务网站都使用服务器端模板引擎呈现“谢谢”页面。在这种情况下,您应向服务器端模板添加电子商务跟踪代码,并使用服务器逻辑来以动态方式将电子商务数据值写入最终页面。以下是在PHP中的代码示例。

在PHP中,您通常应使用某种形式来呈现电子商务数据。在以下示例中,数据存储在关联数组内:

<?php// Transaction Data$trans = array('id'=>'1234', 'affiliation'=>'Acme Clothing', 'revenue'=>'11.99', 'shipping'=>'5', 'tax'=>'1.29');// List of Items Purchased.$items = array( array('sku'=>'SDFSDF', 'name'=>'Shoes', 'category'=>'Footwear', 'price'=>'100', 'quantity'=>'1'), array('sku'=>'123DSW', 'name'=>'Sandles', 'category'=>'Footwear', 'price'=>'87', 'quantity'=>'1'), array('sku'=>'UHDF93', 'name'=>'Socks', 'category'=>'Footwear', 'price'=>'5.99', 'quantity'=>'2'));?>

第一步,编写相应的逻辑以将电子商务数据转换为analytics.js要求的JavaScript字符串:

<?php// Function to return the JavaScript representation of a TransactionData object.function getTransactionJs(&$trans) { return <<<HTMLga('ecommerce:addTransaction', { 'id': '{$trans['id']}', 'affiliation': '{$trans['affiliation']}', 'revenue': '{$trans['revenue']}', 'shipping': '{$trans['shipping']}', 'tax': '{$trans['tax']}'});HTML;}// Function to return the JavaScript representation of an ItemData object.function getItemJs(&$transId, &$item) { return <<<HTMLga('ecommerce:addItem', { 'id': '$transId', 'name': '{$item['name']}', 'sku': '{$item['sku']}', 'category': '{$item['category']}', 'price': '{$item['price']}', 'quantity': '{$item['quantity']}'});HTML;}?>

然后,在<script>代码内添加额外的PHP逻辑,以动态方式输出交易和商品数据:

<!-- Begin HTML --><script>ga('require', 'ecommerce');<?phpecho getTransactionJs($trans);foreach ($items as &$item) { echo getItemJs($trans['id'], $item);}?>ga('ecommerce:send');</script>

在PHP脚本完成执行后,analytics.js所需的交易和商品数据将输出至页面。一旦页面上的JavaScript在浏览器中呈现,所有的电子商务数据都将发送至Google Analytics(分析)。

附上Magento 交易跟踪代码

<?php$order = Mage::getModel('sales/order')->load(Mage::getSingleton('checkout/session')->getLastOrderId());$subtotal = $order->getSubtotal();$order_id = $order->getId(); //the id of the order//$order->getIncrementId();//the increment id of the order$gtotal = $order->getGrandTotal();//grand total of the order$address = $order->getBillingAddress()->getData();$city = $address['city'];$state = $address['region'];$country = $address['country_id'];?><script type="text/javascript">ga('require', 'ecommerce');ga('ecommerce:addTransaction', { 'id': '<?php echo $order_id; ?>', // Transaction ID. Required. 'affiliation': '', // Affiliation or store name. 'revenue': '<?php echo $gtotal;?>', // Grand Total. 'shipping': '0', // Shipping. 'tax': '0' // Tax.});<?php$items = $order->getAllItems();$itemcount=count($items);$name=array();$unitPrice=array();$sku=array();$ids=array();$qty=array();foreach ($items as $itemId => $item){?>ga('ecommerce:addItem', { 'id': '<?php echo $order_id; ?>', // Transaction ID. Required. 'name': '<?php echo $item->getName(); ?>', // Product name. Required. 'sku': '<?php echo $item->getSku(); ?>', // SKU/code. 'category': '', // Category or variation. 'price': '<?php echo $item->getPrice(); ?>', // Unit price. 'quantity': '<?php echo $item->getQtyToInvoice(); ?>' // Quantity.});<?php}?> ga('ecommerce:send');</script>

未经允许不得转载:美国VPS_搬瓦工CN2 GIA VPS » Google Analytics 电子商务跟踪

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏