Я пытаюсь заставить GTM и слой данных работать со следующим кодом:
{if isset($page_name) && $page_name|escape:'html':'UTF-8' == "index"}
<script>
dataLayer.push({
'event': 'addToCart',
'ecommerce': {
'currencyCode': '{$currency->iso_code|escape:'html':'UTF-8'}',
'add': {
'products': [{
'name': '{$product->name|escape:'html':'UTF-8'}',
'id': ' {$product->id|escape:'html':'UTF-8'}',
'price': '{$product->getPrice(true, $smarty.const.NULL, 2)|round:'2'|escape:'html':'UTF-8'}'
'quantity': 1
}]
}
}
});
</script>
{/if}
Дело в том, что код работает на странице продукта, но не работает на страницах индекса или извлечения.Из всего этого я получаю только «currencyCode» в индексе, а для всего остального - «Неопределенный индекс: продукт в / Попытка получить свойство необъектного в».Возможно, мне что-то не хватает в скрипте index / checkout pages?