Google Analytics Gambio

Wie baut man das Conversion Tracking von Google Analytics in Gambio ein, um Käufe zu erfassen? Im Grunde ganz einfach:

Schritt 1) Wir bauen uns die Inhalte für Google Analytics zusammen und schreiben diese dann über eine Klassenerweiterung in den Outputbuffer. Diese Klassenerweiterung führen wir mittels Overload im Ordner

 

\user_classes\overloads\CheckoutSuccessExtenderComponent\

 

durch, beispielsweise mit dem Namen econcessGoogleAnalytics.inc.php. In dieser rufen wir zuerst die Bestelldaten ab:

 

$orders_total_query = xtc_db_query("select * from " . TABLE_ORDERS_TOTAL . " where orders_id = '" . (int) $this->v_data_array['orders_id'] . "'");
$orders_products_query = xtc_db_query("select * from " . TABLE_ORDERS_PRODUCTS . " where orders_id = '" . (int) $this->v_data_array['orders_id'] . "'");

 

Die Ergebnisse hieraus lässt man dann einfließen via ga('ecommerce:addTransaction',... und  ga('ecommerce:addItem',..., wie unter anderem unter https://developers.google.com/analytics/devguides/collection/analyticsjs/ecommerce sehr gut beschrieben. Kurz zusammengefasst:

 

Erst Ecommerce-Tracking initiieren mit

 

ga('require', 'ecommerce');

 

Dann Transaktion hinzufügen mit

 

ga('ecommerce:addTransaction', {
'id': '1234', // Transaction ID. Required.
'affiliation': 'Acme Clothing', // Affiliation or store name.
'revenue': '11.99', // Grand Total.
'shipping': '5', // Shipping.
'tax': '1.29' // Tax.
});

 

Dann Produkte hinzufügen mit

 

ga('ecommerce:addItem', {
'id': '1234', // Transaction ID. Required.
'name': 'Fluffy Pink Bunnies', // Product name. Required.
'sku': 'DD23444', // SKU/code.
'category': 'Party Toys', // Category or variation.
'price': '11.99', // Unit price.
'quantity': '1' // Quantity.
});

 

Dann absenden:

 

ga('ecommerce:send');

 

Den zusammengefügten Javascript-Code jetzt nur noch in den Output Buffer geben, beispielsweise mit

 

$this->v_output_buffer['google_analytics_conversion_tracking']

 

und dann zu Schritt 2 übergehen.

 

Schritt 2) In unserem Template-Ordner greifen wir nun auf den Zwischenspeicher zurück, sinnvollerweise in der Template-Datei

 

\templates\TEMPLATENAME\module\checkout_success.html

 

in der Smarty-Logik:

 

{$google_analytics_conversion_tracking}

 

Fertig!