Magento: отслеживание электронной торговли Google Analytics

0

Я использую Magento 1.7.0.2, и в прошлом я добавил следующий код на мою страницу success.phtml, и Google отслеживал мои конверсии:

<?php 
//-------------------------------------------
// START ADWORDS CONVERSION VALUE TRACKING CODE
//-------------------------------------------
$order_details = Mage::getModel('sales/order')-    
>loadByIncrementId(Mage::getSingleton('checkout/session')->getLastRealOrderId());
 $adwords_saleamt = $order_details->subtotal; 
 ?>

<!-- Google Code for Thank you page Conversion Page -->
<script type="text/javascript">
/* <![CDATA[ */
var google_conversion_id = 00000000;
var google_conversion_language = "en";
var google_conversion_format = "2";
var google_conversion_color = "ffffff";
var google_conversion_label = "xxxxxxxxxxx";
var google_conversion_value = 1.00;
var google_conversion_currency = "GBP";
var google_remarketing_only = false;
/* ]]> */
</script>
<script type="text/javascript" src="//www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt=""    
src="//www.googleadservices.com/pagead/conversion/00000000000/?    
value=1.00&amp;currency_code=GBP&amp;label=xxxxxxxxxxx&amp;guid=ON&amp;script=0"/>
</div>
</noscript>

Теперь, после перехода на Universal Analytics, Google больше ничего не отслеживает. Я связался с Google, и они не могли четко объяснить, что мне нужно делать.

Я понимаю, что теперь мне нужно добавить следующее на мою страницу success.phtml.

До:

  <?php if ($this->getOrderId()):?>
  <?php if ($this->getCanViewOrder()) :?>
   ...
   <?php endif;?>
   <?php endif;?>

После:

 <?php if ($this->getOrderId()):?>
 <?php if ($this->getCanViewOrder()) :?>
  ...
 <?php endif;?>
<?php
// Transaction Data
$orderID = $this->getOrderId();
$order = Mage::getModel('sales/order')->loadByIncrementId($orderID);
$orderTotal = $order->getGrandTotal();
// Affiliation, shipping and tax
$trans = array('id' => $orderID,
         'revenue' => $orderTotal);

 // List of Items Purchased
 $items = array(); 
 foreach ($order->getAllItems() as $item){
 // SKU and category
 $items[] = array('name' => $item->getName(),
            'price' => $item->getPrice(),
            'quantity' => $item->getQtyOrdered());
 }


 // Function to return the JavaScript representation of a TransactionData object.
 function getTransactionJs(&$trans) {
return <<<HTML
ga('ecommerce:addTransaction', {
'id': '{$trans['id']}',
 // if affiliation, shipping or tax is added
 'revenue': '{$trans['revenue']}'
 });
 HTML;
  }

  // Function to return the JavaScript representation of an ItemData object.
  function getItemJs(&$transId, &$item) {
  return <<<HTML
 ga('ecommerce:addItem', {
  'id': '$transId',
  // if SKU or category is added
  'name': '{$item['name']}',
   'price': '{$item['price']}',
   'quantity': '{$item['quantity']}'
  });
 HTML;
  }
 ?>

  <script>
 ga('require', 'ecommerce', 'ecommerce.js');

<?php
echo getTransactionJs($trans);

foreach ($items as &$item) {
echo getItemJs($trans['id'], $item);
}
?>

ga('ecommerce:send');
</script>
<?php endif;?>

Может кто-нибудь, пожалуйста, подтвердите, что это правильно?

Теги:
magento
google-analytics
universal-analytics

2 ответа

0

Должен признаться, что я немного путаюсь с вашим предыдущим сообщением, первый фрагмент кода, который вы упомянули, - это код отслеживания разговоров Google AdWords, который вам не нужно менять вообще, даже если вы переключаетесь с традиционного на универсальное аналитическое отслеживание.

И второй фрагмент кода, который вы упомянули, - это универсальный аналитический код отслеживания разговоров, который будет обслуживаться универсальным модулем отслеживания, и вам не нужно добавлять его вручную на страницу успеха. Если вам нужно добавить, возможно, вы не используете хороший модуль и можете попробовать подключить модуль magento, например http://www.magentocommerce.com/magento-connect/google-analytics-enhanced-ecommerce-tracking.html

Надеюсь, что вышеизложенное имеет смысл, не стесняйтесь спрашивать в случае дальнейшего замешательства. благодаря

Приветствия S

0

Использовать это:

    <?php // GET SOME VALUES FOR TRACKING PIXELS
    $_customerId = Mage::getSingleton('customer/session')->getCustomerId(); 
    $lastOrderId = Mage::getSingleton('checkout/session')->getLastOrderId(); 
    $order = Mage::getSingleton('sales/order'); 
    $order->load($lastOrderId); 
    $_totalData =$order->getData(); 
    $_sub = $_totalData['subtotal'];
    $_sub = round($_sub,2); 
?>
<!-- Google Code for Website XY Conversion Page -->
<script type="text/javascript">
/* <![CDATA[ */
var google_conversion_id = XXXXXXXXXX;
var google_conversion_language = "de";
var google_conversion_format = "2";
var google_conversion_color = "ffffff";
var google_conversion_label = "YYYYYYYYYYYYYYYY";
var google_conversion_value = <?php echo $_sub ?>;
var google_conversion_currency = "EUR";
var google_remarketing_only = false;
/* ]]> */
</script>
<script type="text/javascript" src="//www.googleadservices.com/pagead/conversion.js"></script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="//www.googleadservices.com/pagead/conversion/XXXXXXXXXX/?value=<?php echo $_sub ?>&amp;currency_code=EUR&amp;label=YYYYYYYYYYYYYYYY&amp;guid=ON&amp;script=0"/>
</div>
</noscript>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню