Come aggiungere Ecommerce Analytics a Magento

Scritto da Mario SAM

Google offre diversi strumenti gratuiti per i webmaster, i gestori e gli inserzionisti per sfruttare appieno tutto ciò che succede in Internet.

Immagina di pubblicizzare i tuoi prodotti utilizzando link sponsorizzati da google adwords. Come faccio a sapere quali clic generano vendite? Quale prodotto converte di più? Quale è il più redditizio?

Tutto questo può essere misurato utilizzando analisi di Google, a condizione che abiliti il sistema – come mostrato di seguito.

Monitoraggio e-commerce

Una volta che hai un account in google analytics e hai il tuo modulo abilitato in Magento, torni al tuo analytics e fare clic sul menu “Admin“, quindi fai clic su “Visualizza impostazioni“.

Abilita il monitoraggio

Basta selezionare il valore monetario predefinito del tuo sistema e quindi selezionare “Abilitato” nel seguente monitoraggio e-commerce.

Questo ti permetterà di tenere traccia delle vendite da Google Analytics. Per sapere quali annunci di AdWords stanno convertendo in vendite, è necessario associare la tua analisi con l’account AdWords.

Collega Analytics ad Adwords

Questa impostazione viene trovata al di sotto del monitoraggio e-commerce.

Cambiamenti in Magento

Una volta attivato il monitoraggio delle ecommerce in Google Analytics, Cosa devo modificare nel codice Magento?

NIENTE

Assolutamente niente, Magento è pronta a soddisfare le avanzate impostazioni di Google Analytics nella cattura di dati (ordini e prodotti).

Quindi, se il tuo sistema non sta inviando dati di conversione delle vendite alle analisi è molto probabile che la pagina “ordine di successo” sia stata modificata da un modulo di pagamento o addirittura il tuo tema personalizzato ha rimosso il monitoraggio del codice.

Se è necessario, o se sei curioso, vediamo in che modo il sistema è pronto a inviare questi dati.

3 in 1

Abbiamo 3 (tre) file in Magento che riproducono questo risultato – questa dalla versione 1.7.x. Il primo di questi è googleanalytics.xml:

app > design > frontend > base > default > layout > googleanalytics.xml

Questo è il file che crea il layout della pagina, quindi questo è l’XML che indica quali file verranno utilizzati, vedere template=”googleanalytics/ga.phtml”. Questo file si trova a:

app > design > frontend > base > default > template > googleanalytics > ga.phtml

Quando si analizza il codice si trova la seguente chiamata:

_getOrdersTrackingCode() ?>

Di conseguenza, questo metodo impostato nel block type=”googleanalytics/ga” deve essere eseguito ogni volta che viene richiesta una richiesta.

app > code > core > Mage > GoogleAnalytics > Block > Ga.php

Infine, all’interno di questa classe troviamo il metodo riportato in phtml:

protected function _getOrdersTrackingCode() {
    $orderIds = $this->getOrderIds();
    if (empty($orderIds) || !is_array($orderIds)) {
        return;
    }
    $collection = Mage::getResourceModel('sales/order_collection')->addFieldToFilter('entity_id', array('in' => $orderIds));
    $result = array();
    foreach ($collection as $order) {
        if ($order->getIsVirtual()) {
            $address = $order->getBillingAddress();
        } else {
            $address = $order->getShippingAddress();
        }
        $result[] = sprintf("_gaq.push(['_addTrans', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s']);",
        $order->getIncrementId(),
        $this->jsQuoteEscape(Mage::app()->getStore()->getFrontendName()),
        $order->getBaseGrandTotal(),
        $order->getBaseTaxAmount(),
        $order->getBaseShippingAmount(),
        $this->jsQuoteEscape(Mage::helper('core')->escapeHtml($address->getCity())),
        $this->jsQuoteEscape(Mage::helper('core')->escapeHtml($address->getRegion())),
        $this->jsQuoteEscape(Mage::helper('core')->escapeHtml($address->getCountry()))
        );
    foreach ($order->getAllVisibleItems() as $item) {
        $result[] = sprintf("_gaq.push(['_addItem', '%s', '%s', '%s', '%s', '%s', '%s']);",
        $order->getIncrementId(),
        $this->jsQuoteEscape($item->getSku()), $this->jsQuoteEscape($item->getName()),
        null, // there is no "category" defined for the order item
        $item->getBasePrice(), $item->getQtyOrdered()
        );
        }
        $result[] = "_gaq.push(['_trackTrans']);";
    }
    return implode("\n", $result);
}

Per capire che cosa fa il codice di cui sopra, leggere la procedura del funzionario google analytics: http://code.google.com/apis/analytics/docs/gaJS/gaJSApiEcommerce.html#_gat.GA_Tracker_._addTrans

Abbinamenti

Se non si dispone ancora di Google Analytics nel tuo sistema, leggere il post: Google Analytics in Magento, in cui è possibile monitorare il movimento del tuo negozio virtuale.

Leggi anche il post: Tracciamento eventi in Magento, che sono impostazioni avanzate per monitorare le azioni che si verificano nella navigazione (senza inviare).

Vedere anche una spiegazione di Google sul monitoraggio e-commerce:

E non prendere mai le decisioni nuovamente nel buio.

Successo!

L'autore

Mario SAM

Finché non si presenta l'opportunità di trasferirmi in Italia, continuo ad aiutare a distanza.