yireo_googletagmanager - Version 1.3.8

Version Notes

No notes

Download this release

Release Info

Developer Yireo
Extension yireo_googletagmanager
Version 1.3.8
Comparing to
See all releases


Code changes from version 1.3.7 to 1.3.8

app/code/community/Yireo/GoogleTagManager/Block/Category.php CHANGED
@@ -16,7 +16,7 @@ class Yireo_GoogleTagManager_Block_Category extends Yireo_GoogleTagManager_Block
16
  /**
17
  * @return Mage_Eav_Model_Entity_Collection_Abstract|null
18
  */
19
- public function getLoadedProductCollection()
20
  {
21
  /** @var Mage_Catalog_Block_Product_List $productListBlock */
22
  $productListBlock = Mage::app()->getLayout()->getBlock('product_list');
16
  /**
17
  * @return Mage_Eav_Model_Entity_Collection_Abstract|null
18
  */
19
+ public function getProductCollection()
20
  {
21
  /** @var Mage_Catalog_Block_Product_List $productListBlock */
22
  $productListBlock = Mage::app()->getLayout()->getBlock('product_list');
app/code/community/Yireo/GoogleTagManager/Block/Default.php CHANGED
@@ -123,4 +123,26 @@ class Yireo_GoogleTagManager_Block_Default extends Mage_Core_Block_Template
123
  {
124
  return $this->getContainer()->getData();
125
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
126
  }
123
  {
124
  return $this->getContainer()->getData();
125
  }
126
+
127
+ /**
128
+ * Return a product collection
129
+ *
130
+ * @return bool|object
131
+ */
132
+ public function getProductCollection()
133
+ {
134
+ return false;
135
+ }
136
+
137
+ /**
138
+ * @param $data
139
+ *
140
+ * @return string
141
+ */
142
+ public function jsonEncode($data)
143
+ {
144
+ $string = json_encode($data);
145
+ $string = str_replace('"', "'", $string);
146
+ return $string;
147
+ }
148
  }
app/code/community/Yireo/GoogleTagManager/Block/Ecommerce.php ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * GoogleTagManager plugin for Magento
4
+ *
5
+ * @package Yireo_GoogleTagManager
6
+ * @author Yireo (http://www.yireo.com/)
7
+ * @copyright Copyright 2015 Yireo (http://www.yireo.com/)
8
+ * @license Open Source License (OSL v3)
9
+ */
10
+
11
+ /**
12
+ * Class Yireo_GoogleTagManager_Block_Ecommerce
13
+ */
14
+ class Yireo_GoogleTagManager_Block_Ecommerce extends Yireo_GoogleTagManager_Block_Default
15
+ {
16
+ }
app/code/community/Yireo/GoogleTagManager/Helper/Data.php CHANGED
@@ -23,6 +23,11 @@ class Yireo_GoogleTagManager_Helper_Data extends Mage_Core_Helper_Abstract
23
  */
24
  const METHOD_LAYOUT = 1;
25
 
 
 
 
 
 
26
  /**
27
  * Check whether the module is enabled
28
  *
@@ -125,7 +130,7 @@ class Yireo_GoogleTagManager_Helper_Data extends Mage_Core_Helper_Abstract
125
  * @param $type
126
  * @param $template
127
  *
128
- * @return bool
129
  */
130
  public function fetchBlock($name, $type, $template)
131
  {
@@ -134,6 +139,7 @@ class Yireo_GoogleTagManager_Helper_Data extends Mage_Core_Helper_Abstract
134
  }
135
 
136
  if ($block = $layout->getBlock('googletagmanager_' . $name)) {
 
137
  $this->debug('Helper: Loading block from layout: '.$name);
138
  return $block;
139
  }
@@ -183,6 +189,9 @@ class Yireo_GoogleTagManager_Helper_Data extends Mage_Core_Helper_Abstract
183
  // Add custom information
184
  $this->addCustom($childScript);
185
 
 
 
 
186
  $block->setChildScript($childScript);
187
  $html = $block->toHtml();
188
 
@@ -275,6 +284,23 @@ class Yireo_GoogleTagManager_Helper_Data extends Mage_Core_Helper_Abstract
275
  }
276
  }
277
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
278
  /**
279
  * @param $childScript string
280
  */
@@ -286,4 +312,85 @@ class Yireo_GoogleTagManager_Helper_Data extends Mage_Core_Helper_Abstract
286
  $childScript .= $customBlock->toHtml();
287
  }
288
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
289
  }
23
  */
24
  const METHOD_LAYOUT = 1;
25
 
26
+ /**
27
+ * Ecommerce data
28
+ */
29
+ protected $ecommerceData = array();
30
+
31
  /**
32
  * Check whether the module is enabled
33
  *
130
  * @param $type
131
  * @param $template
132
  *
133
+ * @return bool|Mage_Core_Block_Template
134
  */
135
  public function fetchBlock($name, $type, $template)
136
  {
139
  }
140
 
141
  if ($block = $layout->getBlock('googletagmanager_' . $name)) {
142
+ $block->setTemplate('googletagmanager/' . $template);
143
  $this->debug('Helper: Loading block from layout: '.$name);
144
  return $block;
145
  }
189
  // Add custom information
190
  $this->addCustom($childScript);
191
 
192
+ // Add enhanced ecommerce-information
193
+ $this->addEcommerce($childScript);
194
+
195
  $block->setChildScript($childScript);
196
  $html = $block->toHtml();
197
 
284
  }
285
  }
286
 
287
+ /**
288
+ * @param $childScript string
289
+ */
290
+ public function addEcommerce(&$childScript)
291
+ {
292
+ $ecommerce = $this->getEcommerceData();
293
+
294
+ if (!empty($ecommerce)) {
295
+ $ecommerceBlock = $this->fetchBlock('ecommerce', 'ecommerce', 'ecommerce.phtml');
296
+
297
+ if ($ecommerceBlock) {
298
+ $ecommerceBlock->setData('ecommerce', $ecommerce);
299
+ $childScript .= $ecommerceBlock->toHtml();
300
+ }
301
+ }
302
+ }
303
+
304
  /**
305
  * @param $childScript string
306
  */
312
  $childScript .= $customBlock->toHtml();
313
  }
314
  }
315
+
316
+ /**
317
+ * @return array
318
+ */
319
+ protected function getEcommerceData()
320
+ {
321
+ if (empty($this->ecommerceData)) {
322
+ $this->ecommerceData = array(
323
+ 'currencyCode' => $this->getCurrencyCode(),
324
+ );
325
+ }
326
+
327
+ return $this->ecommerceData;
328
+ }
329
+
330
+ /**
331
+ * @param $name
332
+ * @param $value
333
+ */
334
+ public function addEcommerceData($name, $value)
335
+ {
336
+ $this->ecommerceData[$name] = $value;
337
+ }
338
+
339
+ public function onClickProduct($product, $addJsEvent = true)
340
+ {
341
+ $block = $this->fetchBlock('custom', 'custom', 'product_click.phtml');
342
+
343
+ if ($block) {
344
+ $block->setProduct($product);
345
+ $html = $block->toHtml();
346
+ }
347
+
348
+ if ($addJsEvent && !empty($html)) {
349
+ $html = 'onclick="'.$html.'"';
350
+ }
351
+
352
+ return $html;
353
+ }
354
+
355
+ public function onAddToCart($product, $addJsEvent = true)
356
+ {
357
+ $block = $this->fetchBlock('custom', 'custom', 'product_addtocart.phtml');
358
+
359
+ if ($block) {
360
+ $block->setProduct($product);
361
+ $html = $block->toHtml();
362
+ }
363
+
364
+ if ($addJsEvent && !empty($html)) {
365
+ $html = 'onclick="'.$html.'"';
366
+ }
367
+
368
+ return $html;
369
+ }
370
+
371
+ public function onRemoveFromCart($product, $addJsEvent = true)
372
+ {
373
+ $block = $this->fetchBlock('custom', 'custom', 'product_removefromcart.phtml');
374
+
375
+ if ($block) {
376
+ $block->setProduct($product);
377
+ $html = $block->toHtml();
378
+ }
379
+
380
+ if ($addJsEvent && !empty($html)) {
381
+ $html = 'onclick="'.$html.'"';
382
+ }
383
+
384
+ return $html;
385
+ }
386
+
387
+ /**
388
+ * Return the current currency code
389
+ *
390
+ * @return string
391
+ */
392
+ public function getCurrencyCode()
393
+ {
394
+ return Mage::app()->getStore()->getCurrentCurrencyCode();
395
+ }
396
  }
app/code/community/Yireo/GoogleTagManager/etc/config.xml CHANGED
@@ -12,7 +12,7 @@
12
  <config>
13
  <modules>
14
  <Yireo_GoogleTagManager>
15
- <version>1.3.7</version>
16
  </Yireo_GoogleTagManager>
17
  </modules>
18
 
12
  <config>
13
  <modules>
14
  <Yireo_GoogleTagManager>
15
+ <version>1.3.8</version>
16
  </Yireo_GoogleTagManager>
17
  </modules>
18
 
app/design/frontend/base/default/template/googletagmanager/category.phtml CHANGED
@@ -1,38 +1,51 @@
1
  <?php
2
  /**
3
- * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2015 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
 
11
- $loadProducts = (int) Mage::helper('googletagmanager')->getConfigValue('category_products');
12
  if ($loadProducts > 0) {
13
- $productCollection = $this->getLoadedProductCollection();
14
  }
15
- ?>
16
- <?php if($this->isEnabled()) : ?>
17
- <?php $category = $this->getCategory(); ?>
18
- <?php if(!empty($category) && $category->getId() > 0) : ?>
19
- <?php $this->addAttribute('categoryId', $category->getId()); ?>
20
- <?php $this->addAttribute('categoryName', $category->getName()); ?>
21
- <?php endif; ?>
22
- <?php if(!empty($productCollection)) : ?>
23
- <?php $this->addAttribute('categorySize', $productCollection->getSize()); ?>
24
- <?php $categoryProducts = array(); ?>
25
- <?php $i = 0; ?>
26
- <?php foreach($productCollection as $product) : ?>
27
- <?php if ($i > $loadProducts) break; ?>
28
- <?php $categoryProduct = array(); ?>
29
- <?php $categoryProduct['id'] = $product->getId(); ?>
30
- <?php $categoryProduct['name'] = $product->getName(); ?>
31
- <?php $categoryProduct['sku'] = $product->getSku(); ?>
32
- <?php $categoryProduct['price'] = $product->getPrice(); ?>
33
- <?php $categoryProducts[] = $categoryProduct; ?>
34
- <?php $i++ ; ?>
35
- <?php endforeach; ?>
36
- <?php $this->addAttribute('categoryProducts', $categoryProducts); ?>
37
- <?php endif; ?>
38
- <?php endif; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <?php
2
  /**
3
+ * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
 
11
+ $loadProducts = (int)Mage::helper('googletagmanager')->getConfigValue('category_products');
12
  if ($loadProducts > 0) {
13
+ $productCollection = $this->getProductCollection();
14
  }
15
+
16
+ if ($this->isEnabled()) {
17
+ $category = $this->getCategory();
18
+ if (!empty($category) && $category->getId() > 0) {
19
+ $this->addAttribute('categoryId', $category->getId());
20
+ $this->addAttribute('categoryName', $category->getName());
21
+ }
22
+
23
+ if (!empty($productCollection)) {
24
+ $this->addAttribute('categorySize', $productCollection->getSize());
25
+ $categoryProducts = array();
26
+
27
+ $i = 0;
28
+ foreach ($productCollection as $product) {
29
+
30
+ if ($i > $loadProducts) {
31
+ break;
32
+ }
33
+
34
+ $categoryProduct = array();
35
+ $categoryProduct['id'] = $product->getId();
36
+ $categoryProduct['name'] = $product->getName();
37
+ $categoryProduct['sku'] = $product->getSku();
38
+ $categoryProduct['price'] = $product->getPrice();
39
+ if (!empty($category) && $category->getId() > 0) {
40
+ $categoryProduct['category'] = $category->getName();
41
+ }
42
+ $categoryProduct['position'] = $i;
43
+
44
+ $categoryProducts[] = $categoryProduct;
45
+ $i++;
46
+ }
47
+
48
+ $this->addAttribute('categoryProducts', $categoryProducts);
49
+ $this->getHelper()->addEcommerceData('impressions', $categoryProducts);
50
+ }
51
+ }
app/design/frontend/base/default/template/googletagmanager/custom.phtml CHANGED
@@ -3,10 +3,10 @@
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2014 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
  ?>
11
  <?php if($this->isEnabled()) : ?>
12
- <?php endif; ?>
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
  ?>
11
  <?php if($this->isEnabled()) : ?>
12
+ <?php endif; ?>
app/design/frontend/base/default/template/googletagmanager/customer.phtml CHANGED
@@ -3,21 +3,22 @@
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2014 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
- ?>
11
- <?php if($this->isEnabled()) : ?>
12
- <?php $customer = $this->getCustomer(); ?>
13
- <?php $customerGroup = $this->getCustomerGroup(); ?>
14
- <?php if(!empty($customer) && $customer->getId() > 0) : ?>
15
- <?php $this->addAttribute('customerLoggedIn', 1); ?>
16
- <?php $this->addAttribute('customerId', $customer->getId()); ?>
17
- <?php else: ?>
18
- <?php $this->addAttribute('customerLoggedIn', 0); ?>
19
- <?php $this->addAttribute('customerId', 0); ?>
20
- <?php endif; ?>
21
- <?php $this->addAttribute('customerGroupId', $customerGroup->getId()); ?>
22
- <?php $this->addAttribute('customerGroupCode', strtoupper($customerGroup->getCustomerGroupCode())); ?>
23
- <?php endif; ?>
 
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
+
11
+ if($this->isEnabled()) {
12
+ $customer = $this->getCustomer();
13
+ $customerGroup = $this->getCustomerGroup();
14
+
15
+ if (!empty($customer) && $customer->getId() > 0) {
16
+ $this->addAttribute('customerLoggedIn', 1);
17
+ $this->addAttribute('customerId', $customer->getId());
18
+ } else {
19
+ $this->addAttribute('customerLoggedIn', 0);
20
+ $this->addAttribute('customerId', 0);
21
+ }
22
+ $this->addAttribute('customerGroupId', $customerGroup->getId());
23
+ $this->addAttribute('customerGroupCode', strtoupper($customerGroup->getCustomerGroupCode()));
24
+ }
app/design/frontend/base/default/template/googletagmanager/default.phtml CHANGED
@@ -3,8 +3,8 @@
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2014 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
 
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
 
app/design/frontend/base/default/template/googletagmanager/ecommerce.phtml ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * GoogleTagManager plugin for Magento
4
+ *
5
+ * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
+ * @license Open Software License
9
+ */
10
+
11
+ $data = $this->getEcommerce();
12
+ $this->addAttribute('ecommerce', $data);
app/design/frontend/base/default/template/googletagmanager/order.phtml CHANGED
@@ -3,25 +3,25 @@
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2015 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
- ?>
11
- <?php if ($this->isEnabled()) : ?>
12
- <?php $order = $this->getOrder(); ?>
13
- <?php if (!empty($order) && $order->getId() > 0) : ?>
14
- <?php $this->addAttribute('transactionEntity', 'ORDER'); ?>
15
- <?php $this->addAttribute('transactionId', $order->getIncrementId()); ?>
16
- <?php $this->addAttribute('transactionDate', $order->getCreatedAt()); ?>
17
- <?php $this->addAttribute('transactionAffiliation', Mage::app()->getWebsite()->getName()); ?>
18
- <?php $this->addAttribute('transactionTotal', (float)$order->getGrandTotal()); ?>
19
- <?php $this->addAttribute('transactionSubtotal', (float)$order->getSubtotal()); ?>
20
- <?php $this->addAttribute('transactionTax', $order->getGrandTotal() - $order->getSubtotal()); ?>
21
- <?php $this->addAttribute('transactionShipping', (float)$order->getShippingAmount()); ?>
22
- <?php $this->addAttribute('transactionPayment', $order->getPayment()->getMethodInstance()->getTitle()); ?>
23
- <?php $this->addAttribute('transactionCurrency', Mage::app()->getStore()->getBaseCurrencyCode()); ?>
24
- <?php $this->addAttribute('transactionPromoCode', $order->getCouponCode()); ?>
25
- <?php $this->addAttribute('transactionProducts', $this->getItems()); ?>
26
- <?php endif; ?>
27
- <?php endif; ?>
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
+
11
+ if ($this->isEnabled()) {
12
+ $order = $this->getOrder();
13
+ if (!empty($order) && $order->getId() > 0) {
14
+ $this->addAttribute('transactionEntity', 'ORDER');
15
+ $this->addAttribute('transactionId', $order->getIncrementId());
16
+ $this->addAttribute('transactionDate', $order->getCreatedAt());
17
+ $this->addAttribute('transactionAffiliation', Mage::app()->getWebsite()->getName());
18
+ $this->addAttribute('transactionTotal', (float)$order->getGrandTotal());
19
+ $this->addAttribute('transactionSubtotal', (float)$order->getSubtotal());
20
+ $this->addAttribute('transactionTax', $order->getGrandTotal() - $order->getSubtotal());
21
+ $this->addAttribute('transactionShipping', (float)$order->getShippingAmount());
22
+ $this->addAttribute('transactionPayment', $order->getPayment()->getMethodInstance()->getTitle());
23
+ $this->addAttribute('transactionCurrency', Mage::app()->getStore()->getBaseCurrencyCode());
24
+ $this->addAttribute('transactionPromoCode', $order->getCouponCode());
25
+ $this->addAttribute('transactionProducts', $this->getItems());
26
+ }
27
+ }
app/design/frontend/base/default/template/googletagmanager/product.phtml CHANGED
@@ -1,19 +1,34 @@
1
  <?php
2
  /**
3
- * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2014 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
- ?>
11
- <?php if($this->isEnabled()) : ?>
12
- <?php $product = $this->getProduct(); ?>
13
- <?php if(!empty($product) && $product->getId() > 0) : ?>
14
- <?php $this->addAttribute('productId', $product->getId()); ?>
15
- <?php $this->addAttribute('productName', $product->getName()); ?>
16
- <?php $this->addAttribute('productSku', $product->getSku()); ?>
17
- <?php $this->addAttribute('productPrice', $product->getPrice()); ?>
18
- <?php endif; ?>
19
- <?php endif; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <?php
2
  /**
3
+ * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
+
11
+ if ($this->isEnabled()) {
12
+
13
+ /** @var Mage_Catalog_Model_Product $product */
14
+ $product = $this->getProduct();
15
+
16
+ if (!empty($product) && $product->getId() > 0) {
17
+ $this->addAttribute('productId', $product->getId());
18
+ $this->addAttribute('productName', $product->getName());
19
+ $this->addAttribute('productSku', $product->getSku());
20
+ $this->addAttribute('productPrice', $product->getPrice());
21
+
22
+ $categoryName = $product->getCategory()->getName();
23
+ $this->getHelper()->addEcommerceData('actionField', array('list' => $categoryName));
24
+
25
+ $productData = array(
26
+ 'name' => $product->getName(),
27
+ 'id' => $product->getId(),
28
+ 'price' => $product->getPrice(),
29
+ 'brand' => $product->getManufacturer(),
30
+ 'category' => $categoryName,
31
+ );
32
+ $this->getHelper()->addEcommerceData('detail', array($productData));
33
+ }
34
+ }
app/design/frontend/base/default/template/googletagmanager/product_addtocart.phtml ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * GoogleTagManager plugin for Magento
4
+ *
5
+ * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
+ * @license Open Software License
9
+ */
10
+
11
+ /**
12
+ * To use this code, add the following line to your PHTML templates:
13
+ * <?php $gtm = Mage::helper('googletagmanager'); ?>
14
+ * <?php echo $gtm->onAddToCart($_product); ?>
15
+ */
16
+
17
+ /** @var Mage_Catalog_Model_Product $product */
18
+ $product = $this->getProduct();
19
+ $data = array(
20
+ 'event' => 'addToCart',
21
+ 'ecommerce' => array(
22
+ 'currencyCode' => $this->getHelper()->getCurrencyCode(),
23
+ 'click' => array(
24
+ 'products' => array(
25
+ array(
26
+ 'name' => $product->getName(),
27
+ 'id' => $product->getId(),
28
+ 'quantity' => 1,
29
+ )
30
+ )
31
+ )
32
+ ),
33
+ );
34
+ ?>
35
+ dataLayer.push(<?php echo $this->jsonEncode($data); ?>);
app/design/frontend/base/default/template/googletagmanager/product_click.phtml ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * GoogleTagManager plugin for Magento
4
+ *
5
+ * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
+ * @license Open Software License
9
+ */
10
+
11
+ /**
12
+ * To use this code, add the following line to your PHTML templates:
13
+ * <?php $gtm = Mage::helper('googletagmanager'); ?>
14
+ * <?php echo $gtm->onClickProduct($_product); ?>
15
+ */
16
+
17
+ /** @var Mage_Catalog_Model_Product $product */
18
+ $product = $this->getProduct();
19
+ $data = array(
20
+ 'event' => 'productClick',
21
+ 'ecommerce' => array(
22
+ 'click' => array(
23
+ 'products' => array(
24
+ array(
25
+ 'name' => $product->getName(),
26
+ 'id' => $product->getId(),
27
+ )
28
+ )
29
+ )
30
+ ),
31
+ );
32
+ ?>
33
+ dataLayer.push(<?php echo $this->jsonEncode($data); ?>);
app/design/frontend/base/default/template/googletagmanager/product_removefromcart.phtml ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * GoogleTagManager plugin for Magento
4
+ *
5
+ * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
+ * @license Open Software License
9
+ */
10
+
11
+ /**
12
+ * To use this code, add the following line to your PHTML templates:
13
+ * <?php $gtm = Mage::helper('googletagmanager'); ?>
14
+ * <?php echo $gtm->onRemoveFromCart($_product); ?>
15
+ */
16
+
17
+ /** @var Mage_Catalog_Model_Product $product */
18
+ $product = $this->getProduct();
19
+ $data = array(
20
+ 'event' => 'removeFromCart',
21
+ 'ecommerce' => array(
22
+ 'currencyCode' => $this->getHelper()->getCurrencyCode(),
23
+ 'click' => array(
24
+ 'products' => array(
25
+ array(
26
+ 'name' => $product->getName(),
27
+ 'id' => $product->getId(),
28
+ 'quantity' => 1,
29
+ )
30
+ )
31
+ )
32
+ ),
33
+ );
34
+ ?>
35
+ dataLayer.push(<?php echo $this->jsonEncode($data); ?>);
app/design/frontend/base/default/template/googletagmanager/quote.phtml CHANGED
@@ -3,20 +3,20 @@
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2014 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
- ?>
11
- <?php if($this->isEnabled()) : ?>
12
- <?php $quote = $this->getQuote(); ?>
13
- <?php if(!empty($quote) && $quote->getId() > 0) : ?>
14
- <?php $this->addAttribute('transactionEntity', 'QUOTE'); ?>
15
- <?php $this->addAttribute('transactionId', $quote->getId()); ?>
16
- <?php $this->addAttribute('transactionId', $quote->getId()); ?>
17
- <?php $this->addAttribute('transactionAffiliation', Mage::app()->getWebsite()->getName()); ?>
18
- <?php $this->addAttribute('transactionTotal', (float)$quote->getGrandTotal()); ?>
19
- <?php $this->addAttribute('transactionTax', $quote->getGrandTotal() - $quote->getSubtotal()); ?>
20
- <?php $this->addAttribute('transactionProducts', $this->getItemsAsJson()); ?>
21
- <?php endif; ?>
22
- <?php endif; ?>
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
+
11
+ if($this->isEnabled()) {
12
+ $quote = $this->getQuote();
13
+ if(!empty($quote) && $quote->getId() > 0) {
14
+ $this->addAttribute('transactionEntity', 'QUOTE');
15
+ $this->addAttribute('transactionId', $quote->getId());
16
+ $this->addAttribute('transactionId', $quote->getId());
17
+ $this->addAttribute('transactionAffiliation', Mage::app()->getWebsite()->getName());
18
+ $this->addAttribute('transactionTotal', (float)$quote->getGrandTotal());
19
+ $this->addAttribute('transactionTax', $quote->getGrandTotal() - $quote->getSubtotal());
20
+ $this->addAttribute('transactionProducts', $this->getItemsAsJson());
21
+ }
22
+ }
app/design/frontend/base/default/template/googletagmanager/script.phtml CHANGED
@@ -3,8 +3,8 @@
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
- * @author Yireo (http://www.yireo.com/)
7
- * @copyright Copyright (c) 2014 Yireo (http://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
  ?>
3
  * GoogleTagManager plugin for Magento
4
  *
5
  * @package Yireo_GoogleTagManager
6
+ * @author Yireo (https://www.yireo.com/)
7
+ * @copyright Copyright (c) 2016 Yireo (https://www.yireo.com/)
8
  * @license Open Software License
9
  */
10
  ?>
package.xml CHANGED
@@ -1,2 +1,2 @@
1
  <?xml version="1.0"?>
2
- <package><name>yireo_googletagmanager</name><version>1.3.7</version><stability>stable</stability><license>Open Source License</license><channel>community</channel><extends></extends><summary>No summary</summary><description>No description</description><notes>No notes</notes><authors><author><name>Yireo</name><user>yireo</user><email>info@yireo.com</email></author></authors><date>2015-12-04</date><time>6:45:48</time><compatible></compatible><dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies><contents><target name="mage"><dir name="app"><dir name="etc"><dir name="modules"><file name="Yireo_GoogleTagManager.xml" hash="420bde8207c2ed151e50ef4b7df1c28f"/></dir></dir><dir name="design"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="googletagmanager"><file name="category.phtml" hash="727edb90a546c7f22bd216bdd92b6335"/><file name="custom.phtml" hash="2b4ae99a074d314241a1ba7127661c04"/><file name="customer.phtml" hash="a26d3c30a2a909ef7bd8bffe32f65fb2"/><file name="default.phtml" hash="28f3a12df2e7e745bb7b648c946d58c7"/><file name="order.phtml" hash="9d30380ebcb9f815ccea300d811de7d8"/><file name="product.phtml" hash="e0af99cd595af21de5a97911d2d41fa1"/><file name="quote.phtml" hash="3303deca9e3012c8dcfda1e972e36ace"/><file name="script.phtml" hash="18e2d45895b95061ccf04c5af74e25a9"/></dir></dir><dir name="layout"><file name="googletagmanager.xml" hash="4b2e83f2e964891da358c9a64647a043"/></dir></dir></dir></dir></dir><dir name="code"><dir name="community"><dir name="Yireo"><dir name="GoogleTagManager"><dir name="etc"><file name="config.xml" hash="9885225ea260248d6993490bd44568da"/><file name="system.xml" hash="1a0483ed2cd30bd1ec806797a8624225"/></dir><dir name="Model"><file name="Container.php" hash="70873159e8eb2254b8f701bc7ccf313e"/><file name="Observer.php" hash="e9055a00cd61dfaea748e42d0ed7457f"/><dir name="Backend"><dir name="Source"><file name="Method.php" hash="8af7a0459aaa78c93bf8c2d11a1bd46c"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="83da9056d4769592d976753c17e39416"/></dir><dir name="Block"><file name="Category.php" hash="77ccce8e9d11b22da3de6a67408e06e8"/><file name="Custom.php" hash="e208f2669b99b54001d90730b1fa5e2f"/><file name="Customer.php" hash="b8c90683ce9860d530c1dfb16e15ecda"/><file name="Default.php" hash="24a1e5c85930ee6e1723307289f22dac"/><file name="Order.php" hash="eaaa92e54a6f98c8c39ee484dff1a7bb"/><file name="Product.php" hash="7427e6ff8ef6efa9acaac933a3e76b4a"/><file name="Quote.php" hash="d4ada2d05f420e396849780ad547c1dd"/><file name="Script.php" hash="efe492a317563bfe87772f678a338088"/></dir></dir></dir></dir></dir></dir></target></contents></package>
1
  <?xml version="1.0"?>
2
+ <package><name>yireo_googletagmanager</name><version>1.3.8</version><stability>stable</stability><license>Open Source License</license><channel>community</channel><extends></extends><summary>No summary</summary><description>No description</description><notes>No notes</notes><authors><author><name>Yireo</name><user>yireo</user><email>info@yireo.com</email></author></authors><date>2016-01-28</date><time>2:14:36</time><compatible></compatible><dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies><contents><target name="mage"><dir name="app"><dir name="etc"><dir name="modules"><file name="Yireo_GoogleTagManager.xml" hash="420bde8207c2ed151e50ef4b7df1c28f"/></dir></dir><dir name="design"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="googletagmanager"><file name="category.phtml" hash="ac826696d14d1985864563900264537b"/><file name="custom.phtml" hash="b888cea900aba4a488968ca88a42813d"/><file name="customer.phtml" hash="3db76ba18473a1c7f664c1b50db622a4"/><file name="default.phtml" hash="b2247df055e48fc6ae8cb535e8ec9f52"/><file name="ecommerce.phtml" hash="da3bbe9f182ff24a62ad84d7d8c8b7bc"/><file name="order.phtml" hash="5dadb37be8798f76651e9bbb55a9bf4a"/><file name="product.phtml" hash="c9c3856a68f686dd225738d7c3947d29"/><file name="product_addtocart.phtml" hash="61928e816993230f6de9925d83fe6219"/><file name="product_click.phtml" hash="1946b2edbcd2295cc21031e72293f268"/><file name="product_removefromcart.phtml" hash="694db96f70ab2fddc2d1e116582567e7"/><file name="quote.phtml" hash="18c5352672c1b6ef704e60f8c3f035f2"/><file name="script.phtml" hash="9fc6143f2237988f1ff4325d5cfc0969"/></dir></dir><dir name="layout"><file name="googletagmanager.xml" hash="4b2e83f2e964891da358c9a64647a043"/></dir></dir></dir></dir></dir><dir name="code"><dir name="community"><dir name="Yireo"><dir name="GoogleTagManager"><dir name="etc"><file name="config.xml" hash="f2d35d9183ada60f72a1719d4e5064c4"/><file name="system.xml" hash="1a0483ed2cd30bd1ec806797a8624225"/></dir><dir name="Model"><file name="Container.php" hash="70873159e8eb2254b8f701bc7ccf313e"/><file name="Observer.php" hash="e9055a00cd61dfaea748e42d0ed7457f"/><dir name="Backend"><dir name="Source"><file name="Method.php" hash="8af7a0459aaa78c93bf8c2d11a1bd46c"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="bfaf7740830c6f557fae81e108bd70f4"/></dir><dir name="Block"><file name="Category.php" hash="63aac465df78b4f57b93831ff02c6d55"/><file name="Custom.php" hash="e208f2669b99b54001d90730b1fa5e2f"/><file name="Customer.php" hash="b8c90683ce9860d530c1dfb16e15ecda"/><file name="Default.php" hash="0e169aa24248e08f4a6ffbb3d286df41"/><file name="Ecommerce.php" hash="13bb03fab65e9afe756bc087ba328302"/><file name="Order.php" hash="eaaa92e54a6f98c8c39ee484dff1a7bb"/><file name="Product.php" hash="7427e6ff8ef6efa9acaac933a3e76b4a"/><file name="Quote.php" hash="d4ada2d05f420e396849780ad547c1dd"/><file name="Script.php" hash="efe492a317563bfe87772f678a338088"/></dir></dir></dir></dir></dir></dir></target></contents></package>