Files
GoogleAnalytics4/views/twig/event/purchase.html.twig

62 lines
4.4 KiB
Twig

{% block d3_ga4_purchase_block %}
{% set doNotShow %}{% apply spaceless %}
<script type="text/javascript">
{% set d3_ga4_purchase %}
{% apply spaceless %}
dataLayer.push({"event": null, "eventLabel": null, "ecommerce": null});
{% set gtmOrder = oView.getOrder() %}
{% set gtmBasket = oView.getBasket() %}
{% set gtmArticles = gtmOrder.getOrderArticles() %}
{% set gtmOrderVouchers = gtmOrder.getVoucherNrList() %}
dataLayer.push({
'event': 'purchase',
'eventLabel':'Checkout Step 5',
'ecommerce':
{
'transaction_id': '{{ gtmOrder.getFieldData("oxordernr") }}',
'affiliation': '{{ oxcmp_shop.getFieldData("oxname") }}',
'value': {{ gtmOrder.getTotalOrderSum() }},
'tax': {{ gtmOrder.getFieldData("oxartvatprice1")+gtmOrder.getFieldData("oxartvatprice2") }},
'shipping': {{ gtmOrder.getFieldData("oxdelcost") }},
'currency': '{{ gtmOrder.getFieldData('oxcurrency') }}',
'coupon': '{% for gtmOrderVoucher in gtmOrderVouchers %}{{ gtmOrderVoucher }}{% if not loop.last %}, {% endif %}{% endfor %}',
'paymentType': '{{ gtmBasket.getPaymentOnPaymentId() }}',
'items':
[
{% for gtmBasketItem in gtmArticles %}
{% set gtmPurchaseItemPriceObject = gtmBasketItem.getPrice() %}
{% set gtmPurchaseItem = gtmBasketItem.getArticle() %}
{% set gtmPurchaseItemCategory = gtmPurchaseItem.getCategory() %}
{% set gtmManufacturer = gtmBasketItem.getArticle().getManufacturer() %}
{
'item_oxid': '{{ gtmProduct.getFieldData("oxid") }}',
'item_id': '{{ gtmBasketItem.getFieldData("oxartnum") }}',
'item_name': '{{ gtmBasketItem.getFieldData('oxtitle')|raw }}',
'affiliation': '{{ gtmBasketItem.getFieldData('oxtitle')|raw }}',
'coupon': '{% for gtmOrderVoucher in gtmOrderVouchers %}{{ gtmOrderVoucher }}{% if not loop.last %}, {% endif %}{% endfor %}',
'item_variant': '{{ gtmBasketItem.getFieldData("oxselvariant") }}',
'item_brand': '{% if gtmManufacturer %}{{ gtmManufacturer.getRawFieldData('oxtitle') }}{% endif %}',
{% if gtmPurchaseItemCategory %}
'item_category': '{{ gtmPurchaseItemCategory.getSplitCategoryArray(0, true) }}',
'item_category2': '{{ gtmPurchaseItemCategory.getSplitCategoryArray(1, true) }}',
'item_category3': '{{ gtmPurchaseItemCategory.getSplitCategoryArray(2, true) }}',
'item_category4': '{{ gtmPurchaseItemCategory.getSplitCategoryArray(3, true) }}',
'item_list_name': '{{ gtmPurchaseItemCategory.getSplitCategoryArray() }}',
{% endif %}
'price': {{ gtmPurchaseItemPriceObject.getPrice() }},
'quantity': {{ gtmBasketItem.getFieldData("oxamount") }},
'position': {{ loop.index }}
}{% if not loop.last %},{% endif %}
{% endfor %}
]
}{% if oViewConf.isDebugModeOn() %},
'debug_mode': 'true'
{% endif %}
});
{% endapply %}
{% endset %}
{{ script({ add: d3_ga4_purchase.__toString(), dynamic: __oxid_include_dynamic }) }}
</script>
{% endapply %}{% endset %}
{% endblock %}