2017-06-26 2 views
0

Je ne suis pas un développeur, mais en essayant d'envoyer des données de commerce électronique à datalayer. Je ne vois pas de données de commerce électronique à datalayer dans la console. J'ajoute les données à order-confirmation.tpl dans prestashop. ci-dessous est comment je vais envoyer des donnéesComment envoyer des données de commerce électronique à datalayer dans prestashop

<Script type = "text/javascript"> 
dataLayer = ({ 
'transactionId' : '{literal} {$order_id} {/literal}' ,  
'transactionTotal' : {literal } { $total_a_payment } {/literal } , 
'transactionTax' : { literal } { $tax } { /literal } , 
'transactionShipping' : { literal } { $ expenses_envoice } { /literal 
    } , 
    'transactionProducts' : [ { /literal } { foreach from = $ products 
    item = product name = products } { /literal } 
    { 
'Sku' : '{literal}{$producto.id_product}{/literal}' , 
'Name' : '{literal}{$producto.name}{/literal}' , 
'Price' : { literal } { $ product . Price_wt } { /literal } , 
'Quantity' : { literal } { $ product . Quantity } { /literal } 
    } { Literal} {if $ smarty.foreach.productos.iteration! = $ Products 
    | @count} {literal}, {/ literal } {/if } { /literal } 
    { Literal} {/ foreach } ] , { /literal } 
    'Event' : 'transactionComplete' 
    }) 
    </ Script> 
    {/Literal } 

quelqu'un a l'expérience avec Prestashop s'il vous plaît aider. J'utilise Google Tag Manager pour le suivi du commerce électronique. merci

+0

Ne pas avoir experiance Presta mais toujours utiliser dataLayer.push ({...}) au lieu de passer outre dataLayer en utilisant "=". –

+1

Il y a trop de problèmes avec votre code. Je pense que vous devez formater votre code avant que quelqu'un puisse vous aider. – Matus

Répondre

0

J'ai eu le même problème. Vous devez également éditer le fichier controllers/front/OrderConfirmationController.php. Trouver la fonction displayOrderConfirmation et insérer quelque chose comme cette partie du code:

$order = new Order($this->id_order); 
$currency = new Currency($order->id_currency); 
/* added part */ 
$cart = new Cart($order->id_cart); 
$products = $cart->getProducts(); 
$this->context->smarty->assign(array(
'order_id'=> $this->id_order, 
'total_a_payment'=> $order->total_paid_tax_incl, 
'expenses_envoice'=> $order->total_shipping_tax_incl, 
'tax'=> ($order->total_paid_tax_incl - $order->total_paid_tax_excl), 
'products' => $products 
)); 
/*end of added*/ 

Source originale: https://www.prestashop.com/forums/topic/618328-variables-for-google-tag-manager/