Для проекта реалізованого на PHP (частково з фреймворком YII2 і частково без фреймворка).
Доступи надаю через репозиторій bitbucket.
Треба щоб спрацьовували такі події:
1) add_to_cart - частково виконано
2) begin_checkout
3) Purchase
Треба додати на shinaland.com.ua на мобільній і десктопній версії - це не адаптивна версія а два різних місця.
Событие begin_checkout должно начинаться, когда пользователь перешёл на страницу "https://shinaland.com.ua/cart" с учётом данных о товарах
Пример:
/**
* A function to handle a click on a checkout button.
*/
function onCheckout() {
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "begin_checkout",
ecommerce: {
items: [{
item_name: "Donut Friday Scented T-Shirt", // Name or ID is required.
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_category2: "Mens",
item_category3: "Shirts",
item_category4: "Tshirts",
item_variant: "Black",
item_list_name: "Search Results",
item_list_id: "SR123",
index: 1,
quantity: 1
}]
}
});
}
Событие Purchase должно срабатывать при успешном оформлении заказа и брать данные о товаре . В данном случае одна и та же страница благодарности. Её нужно поменять. Так как во время оформления и после покупки - https://shinaland.com.ua/cart. Нужно сделать к примеру вот так для оформленного заказа https://shinaland.com.ua/thanksyou и после оттуда отправлять данные событием purchase
Пример:
dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
dataLayer.push({
event: "purchase",
ecommerce: {
transaction_id: "T12345",
affiliation: "Online Store",
value: "59.89",
tax: "4.90",
shipping: "5.99",
currency: "EUR",
coupon: "SUMMER_SALE",
items: [{
item_name: "Triblend Android T-Shirt",
item_id: "12345",
price: "15.25",
item_brand: "Google",
item_category: "Apparel",
item_variant: "Gray",
quantity: 1
}, {
item_name: "Donut Friday Scented T-Shirt",
item_id: "67890",
price: 33.75,
item_brand: "Google",
item_category: "Apparel",
item_variant: "Black",
quantity: 1
}]
}
});