2016-09-29 2 views
0

Unser Zahlungsverkehr wurde gerade auf eine einseitige Anwendung umgestellt, daher müssen wir anpassen, wie wir erweiterte eCommerce-Daten an Google Analytics senden. Wir haben eCommerce-Daten vor dem Wechsel erhalten.Erweiterte eCommerce-, Einzelseitenanwendung und Tag Manager

Unser Google Analytics-Code wird über den Tag-Manager eingespeist, und wir haben einige Versuche unternommen, die Trichterdaten mit virtuellen Seiten-URLs zu versenden, aber bisher noch nicht erfolgreich.

Was ist der beste Weg, um dies zu implementieren?

Edit: Wir versuchen derzeit die verfügbaren Daten über die Datalayer zu machen und es im Tag Manager Debugger sind zu sehen, aber es scheint nicht durch zu Google Analytics

-Code unten zu bekommen - die E-Commerce-Daten werden in jeder Phase des Trichters gesendet.

Schritt eins:

window.dataLayer.push(window.GA_DATA_OBJECT_START); ga('set', 'page', `/profile/?purchaseView=true&product=${this.state.product}`); ga('send', 'pageview');

Schritt zwei:

ga('set', 'page', `/profile/?billingConfirmed=true&product=${this.state.product}`); ga('send', 'pageview');

Schritt drei:

window.dataLayer.push(window.GA_DATA_OBJECT_END); ga('set', 'page', `/profile/?purchaseSuccess=true&product=${this.state.product}`); ga('send', 'pageview');

+0

Welche SPA-Frameworks verwenden Sie? – manzapanza

+0

Wir verwenden react –

+0

Haben Sie schon einen Blick auf reactive-ga geworfen? https://github.com/react-ga/react-ga – manzapanza

Antwort

0

Wenn es eine einzelne Seite Anwendung Dont Verwenden Sie die Seitenansicht senden.

window.ga("ec:addProduct", { 
       "id": product.id,     // Product ID (string). 
       "name": product.name, // Product name (string). 
       "category": product.category,   // Product category (string). 
       "brand": product.company,    // Product brand (string). 
       "price": product.price,     // Product price (currency). 
       "quantity": 1 
      }); 
      window.ga("ec:setAction", "remove"); 
      window.ga("send", "event", "enhanced booking", "leave page", "remove from booking"); 

ein weiteres Beispiel

window.ga("ec:addProduct", { 
       "id": booking._id,     // Product ID (string). 
       "name": booking.name, // Product name (string). 
       "category": booking.services[0].category,   // Product category (string). 
       "brand": booking.storeTitle,    // Product brand (string). 
       "price": booking.price,     // Product price (currency). 
       "quantity": 1 
      }); 
      window.ga("ec:setAction", "purchase", {   // Transaction details are provided in an actionFieldObject. 
       "id": booking._id,      // (Required) Transaction id (string). 
       "revenue": booking.companyService.actualPrice,      // Revenue (currency). 
       "coupon": booking.coupon     // Transaction coupon (string). 
      }); 
      window.ga("send", "event", "Form", "Submit", "Booking Form"); 

Verwendung dieses nur für Impressionen wie

window.ga("ec:addImpression", { 
    "id": companyId,     // Product details are provided in an impressionFieldObject. 
    "name": companyInfo.name, 
    "category": companyInfo.category, 
    "list": "Company Info" 
}); 
window.ga("ec:setAction", "detail"); 
window.ga("send", "pageview"); 
+0

ist dies vorzuziehen, um die Daten über die Datenschicht verfügbar zu machen? Das ist der Ansatz, den wir bisher versucht haben (Entschuldigung vergessen zu erwähnen, dass in der ursprünglichen Frage geändert wird) –

Verwandte Themen