Página 1 de 2

[TUTORIAL] Google Analytics Ecommerce e Velocidade Conexão

Enviado: 01 Abr 2011, 03:17
por Manoel Vidal
Para monitoramento de comércio eletrônico, utilizando o código GA assíncrono, faça o seguinte:

1) Remova o código abaixo do arquivo footer.php que se encontra dentro da pasta catalog/controller/common/, e coloque-o no arquivo header.php que se encontra na pasta catalog/controller/common/, antes da linha $this->render();:
Código: Selecionar todos
   if ($this->config->get('google_analytics_status')) {
          $this->data['google_analytics'] = html_entity_decode($this->config->get('google_analytics_code'), ENT_QUOTES, 'UTF-8');
        } else {
          $this->data['google_analytics'] = '';
        }
2) Adicione o código abaixo no arquivo header.tpl, que está dentro da pasta catalog/view/theme/SEU_TEMA/template/common, antes da tag </head>:
Código: Selecionar todos
<?php echo $google_analytics; ?>
3) Remova o código abaixo do arquivo footer.tpl, que está dentro da pasta catalog/view/theme/SEU_TEMA/template/common, antes da tag </body>:
Código: Selecionar todos
<?php echo $google_analytics; ?>
4) Adicione o código abaixo ao arquivo success.tpl, que está na pasta catalog/view/theme/SEU_TEMA/template/common/, coloque o código antes da linha <?php echo $footer; ?>:
Código: Selecionar todos
    <?php if(isset($orderDetails) && isset($orderProducts)) { ?>
        <script type="text/javascript">
         // Substitua o UA-XXXXXXXX-X pelo seu código que se encontra no Google Analytics
          var _gaq = _gaq || [];
          _gaq.push(['_setAccount', 'UA-XXXXXXXX-X']); 
          _gaq.push(['_addTrans',
            '<?php echo $orderDetails['order_id']; ?>',
            'Store Name',
            '<?php echo $orderDetails['total']; ?>',
            '',
            '',
            '',
            '',
            ''
           ]);

           <?php foreach($orderProducts as $product) { ?>
              _gaq.push(['_addItem',
                  "<?php echo $product['order_id']; ?>",
                  "<?php echo $product['product_id']; ?>",
                  "<?php echo json_encode($product['name']); ?>",
                  "<?php echo $product['model']; ?>",
                  "<?php echo $product['price']+($product['price']*$product['tax']/100); ?>",
                  "<?php echo $product['quantity']; ?>"
               ]);
           <? } ?>
           
           _gaq.push(['_trackTrans']); 
        (function() {
            var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
            ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
            var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
          })();
        </script>
        <?php } ?>
5) Adicione o código abaixo no arquivo success.php, que está na pasta catalog/controller/checkout/, antes da linha $this->cart->clear();:
Código: Selecionar todos
$this->load->model('checkout/order');
$this->data['orderDetails'] = $this->model_checkout_order->getOrder($this->session->data['order_id']);
$this->data['orderProducts'] = $this->model_checkout_order->getOrderProducts($this->session->data['order_id']);
6) Adicione o código abaixo no arquivo order.php, que está dentro da pasta catalog/model/checkout/, após a linha class ModelCheckoutOrder extends Model {:
Código: Selecionar todos
    public function getOrderProducts($order_id) {
        $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'");
        return $query->rows;
    }
Pronto! Espero ter ajudado :D

Fonte: http://forum.opencart.com/viewtopic.php?f=121&t=21675
Fiz adaptações e melhorias.

Colaboração: José Luiz

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 02 Abr 2011, 23:23
por acesbrasil
Podia ter me dado um créditozinho pela descoberta e um pontinho pela colaboração :lol:

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 02 Abr 2011, 23:46
por acesbrasil
Só registrar que ao aplicar o item 4, o Dream Weaver acusa erro na linha 31 e registrar também que é necessário trocar o códio UA-XXXX para o seu código fornecedido pelo Google.

Abraços a todos e postem os resultados positivos e negativos

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 03 Abr 2011, 00:43
por Manoel Vidal
Crédito e Ponto concedido :D

No próprio script do item 4 está comentado a necessidade da troca do código. :mrgreen:

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 09 Abr 2011, 09:03
por acesbrasil
Rapaz, implantei conforme o tutorial e continua não funcionando no Google Analytics, o seu tá ok?

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 25 Abr 2011, 22:50
por acesbrasil
Vidal, eu acho que encontrei um erro no código que estava impedindo de funcionar, ainda estou esperando uma venda para testar, mas já tem alguns dias que venho acompanhando o relatório de erros do Open Cart e analisando o arquivo success.tpl através do Dreaweaver onde ambos ficavam me dizendo que havia um erro de sintaxe na linha 31, entretanto o erro no código está na seguinte parte
Código: Selecionar todos
<?php echo json_encode($product['name']); ?>,
Se olhar bem e comparar com os demais está faltado o " na frente dessa linha devendo ficar assim
Código: Selecionar todos
"<?php echo json_encode($product['name']); ?>,
Por favor verificar para termos certeza

Abraços e sucesso a todos

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 25 Abr 2011, 23:40
por Manoel Vidal
Já alterei o código conforme sua indicação, poderia fazer mais testes ? :D

Aguardo retorno.

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 26 Abr 2011, 08:27
por acesbrasil
Com certeza chegia, será um prazer realizar mais essa colaboração.

Em breve vou falar sobre o Gzip do Open Cart, para ele funcionar corretamente é preciso adicionar algumas linhas no .htaccess, eu já estou utilizando as adições necessárias e tá super bom de velocidade

Quanto a este código, com a adição da " na frente da linha citada o Dreamweaver parou de informar o erro na linha 31 agora é aguardar uma venda para ter certeza que o Google Analyticis irá capturar certinho pois no meu caso a informação só é recebida no Google Analytics quando o cliente efetua o pagamento no Pagamento Digital que então após a confirmação do pagamento redireciona automaticamente para a página do arquivo success.tpl que é onde está o código que irá capturar os dados da transação e enviar para o Google Analytics

Abraços e até breve

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 26 Abr 2011, 09:18
por Manoel Vidal
Ok amigo, aguardarei pelo seu retorno ;)

Vai ser ótimo sua contribuição sobre o GZip também :D

Re: [TUTORIAL] Google Analytics Ecommerce e Velocidade Conex

Enviado: 11 Out 2011, 11:22
por AngelinDark
Essas alterações servem pra versão 1.5.1 ?