На самом деле, там все сложнее. В теме только отслеживание транзакции (последнего шага покупки).
Чтобы видеть всю воронку нужно:
1. Чтобы видеть, какие товары были добавлен в корзину:
- добавить в teaser и в full товара где-нибудь возле вывода кнопки "добавить в корзину"
- <?php
- $arr = $item->getElements();
- foreach($arr as $value){
- if($value->config->type == 'jbpriceadvance'){
- $basic = $value->getElementData()->basic;
- $sku = $basic['sku'];
- break;
- }
- }
- ?>
-
- <script>
- function onProductClick() {
-
- ga('ec:addProduct', {
- 'id': '<?php echo $sku; ?>',
-
- 'name': '<?php echo strip_tags($this->renderPosition("title")); ?>',
- });
- ga('ec:setAction', 'add');
- }
- </script>
- в шаблоне кнопок /media/zoo/applications/jbuniversal/elements/jbpriceadvance/tmpl/_buttons.php немного переделать код кнопки добавления в корзину. На примере шаблона обычной кнопки:
- <a rel="nofollow" href="#add-to-cart" id="<?php echo $this->getItem()->id;?>" class="jsAddToCart jbzoo-button green"
- title="<?php echo JText::_('JBZOO_JBPRICE_ADD_TO_CART'); ?>" onclick="onProductClick(); return !ga.loaded;"><?php echo JText::_('JBZOO_JBPRICE_ADD_TO_CART'); ?></a>
Т.е повесить на все нужные кнопки ту самую функцию onProductClick.
2. Чтобы видеть, что товары были просмотрены добавить в teaser и в full товара код
- <script>
-
- ga("create", "UA-XXXXX-Y");
- ga('require', 'ec');
- ga('ec:addImpression', {
-
- 'id': '<?php echo $sku; ?>',
- 'name': '<?php echo strip_tags($this->renderPosition("title")); ?>'
-
- });
- ga('ec:setAction', 'detail');
- ga('send', 'pageview');
-
-
- </script>
3. Чтобы видеть, сколько человек перешло в корзину: добавить в /media/zoo/applications/jbuniversal/templates/*шаблон*/renderer/basket/_default.php код отслеживания просмотра корзины
- <script>
- ga("create", "UA-XXXXX-Y");
- ga('require', 'ec');
- ga('ec:setAction','checkout', {
- 'step': 1
- });
- ga('send', 'pageview');
- </script>
4. Чтобы видеть, кто оформил заказ, добавить тот код, что был в теме. Т.е. в /media/zoo/applications/jbuniversal/templates/*название шаблона*/renderer/payment_success/_default.php
- <script>
-
- ga("create", "UA-XXXXX-Y");
- ga('require', 'ec');
-
-
- <?php
- $cartItems = $view->orderDetails->getOrderItems();
-
-
- foreach ($cartItems as $cartItem) {
- echo "ga('ec:addProduct', {";
- echo "'id': '".$cartItem['sku']."',";
- echo "'name': '".$cartItem['name']."',";
- echo "'price': '".round($cartItem['price'],2)."',";
- echo "'quantity': ".$cartItem['quantity']."";
- echo "});";
- }
- ?>
-
-
- ga('ec:setAction', 'purchase', {
- 'id': <?php echo "'".$view->order->id."'" ?>,
- 'revenue': <?php echo "'".round($view->orderDetails->getTotalPrice(),2)."'" ?>
- });
- ga('ecommerce:send');
- </script>
В итоге мы будем видеть все красиво
Хотя там все равно еще остается отслеживание возвратов товара, купонов и т.п. Я в это не вникал.
PS Может быть, что-то забыл или перепутал. Настраивал это все давно.
Сообщение отредактировал Sliapy: 26 January 2016 - 01:28
[color=#aa0000]Не забывайте нажимать кнопку "Вопрос Решён" под сообщением, которое решило Вашу проблему.[/color]