Pro konverze GA4 je potreba nejdrive zjistit a pripadne zajistit GA4 zapis v @layout.latte popis jak na to je pak zde: https://wiki.czechgroup.cz/admin/menuitem/210
Nasledovny kod se bere z cykloanimal.cz
Konverze se odesilaji vzdy jen na strance po odeslane objednavce a odesila informace o objednavce do google.
Postup pro pridani:
- Je nutne pridat do final.latte do block scripts a do podminky, ktera vypada podobne jako ta nize
$orderId != 'nofound' && $isProduction && $diff < 5
nasledujici kod
{if isset($web['GOOGLE_ANALYTICS']) && strlen($web['GOOGLE_ANALYTICS']) > 1 && (isset($cookieSettings, $cookieSettings['cookie_analytics']) || !isset($cookieSettings))} <script type="text/javascript"> // Google Analytics - Ecommerce modul gtag('event', 'purchase', { 'transaction_id': "{$order['id']|noescape}", 'affiliation': {$order['shopname']}, 'value': "{$order['total_sum']|number:2:'.',''|noescape}", 'currency': {$order['currency']}, 'tax': "{$order['tax_sum']|number:2:'.',''|noescape}", 'shipping': "{$order['shipping_sum']|number:2:'.',''|noescape}", 'items': [ {foreach $order['products'] as $product} { 'id': "{$product['product_id']|noescape}", 'name': {$product['name']}, 'quantity': "{$product['piece']|number:0:'.',''|noescape}", 'price': "{$product['price']|number:2:'.',''|noescape}", } {sep},{/sep} {/foreach} ], }); </script> {/if}
- Pak je potreba upravit GOOGLE_ANALYTICS na typ, ktery se nastavil i pro podminku inicializace google analytic v @layout.latte.
Toto lze odzkouset pouze tim, ze si na lokalnim prostredi zmenim jazykovou mutaci GOOGLE_ANALYTICS na nejaky nesmysl (musi tam byt, alespon 2 znaky vyplneny) a pak ten kod vyse si dam mimo podminku v prvnim kodovem bloku. Otevru pruzkumnik a zkontroluju, ze to obsahuje data, ktera ma.
Pokud se to bude resit v ukolu (doptat se v ukolu, kdyz nebude zmineno) tak se dodava jeste kod conversion (mysleno kod nize). Ten se vklada do konfigurace webu nasledovne:
<script>
gtag('event', 'conversion', {
'send_to': 'konverzni kod', // dava se pevny kod
'value': ###VALUE_VAT###, // celkova cena objednavky
'currency': '###CURRENCY###', // mena
'transaction_id': '###ORDERID###' //id objednavky
});
</script>
Je potreba overit, ze se zastupny znaky v basket.php zmeni na spravna data a pripadne to v tom basket.php upravit.
A opet to otestovat.