Ниже приведены данные eCommerse, введенные в эфир.Разбор данных eCommerse для ввода в dataLayer для Диспетчера тегов Google
Я хочу извлечь определенные биты данных, чтобы подтолкнуть их к массиву DataMayer Tag Manager (GTM). Все, что скрыто, я не могу использовать (например, информацию о кредитной карте и т. Д.). Обратите внимание, что весь этот код легко доступен для общественности и не содержит конфиденциальных данных.
ПОПЫТКА A:
<script type="text/javascript">//anything below I'm not going to mess with
var _gaq = _gaq || [];
BLACKBAUD.netcommunity.api.DonationConfirmation.add(function(data){
if(data.TransTotal){
_gaq.push(['_addTrans', data.TransID, '',data.TransTotal, '', '', '', '', '']);
for(var i=0;i<data.Items.length;i++){
_gaq.push(['_addItem', data.Items[i].ID, data.Items[i].SKU, data.Items[i].Name, '', data.Items[i].Price, data.Items[i].Quantity]);
};
_gaq.push(['_trackTrans']);
dataLayer.push({gaqBatch_gaq}); //Except for here. I have added this line.
};
});
</script>
Это выше была моя оригинальная попытка. Он подталкивает набор данных толкания (3 сегмента) как таковой (см. Изображение).
Google Tag Manager - Preview Mode - Data Layer Push Results (A)
ПОПЫТКА B:
я пересмотрел мой Snipper выше от,
dataLayer.push({_gaq});
в
var gaqTemp = [].concat.apply([], _gaq); //Merges Arrays. Found this on stackoverflow. dataLayer.push({'gaqBatch' : gaqTemp}); //Pushes Merged Array to dataLayer as 'gaqBatch'
Это приводит к следующим: Google Tag Manager - Preview Mode - Data Layer Push Results (B)
То, что я действительно хочу это:
{
gtm: {
...
},
...
gaqBatch: [
'giftID' : 6024, //from gaqBatch array index 1
'giftAmount' : $25, //from gaqBatch array index 3
'transID' : aaaa-bbbb-cccc-dddd-eeee-ffff, //from gaqBatch array index 11
'giftType' : Donation, //from gaqBatch array index 12
'giftTotal' : $25 //from gaqBatch array index 15
]
}
Если я не подталкивать все данные из электронной коммерции сниппета в GTM dataLayer, я бы предпочел, чтобы , То есть временно храните его в массиве и создавайте 5 объектов: giftID, giftAmount, transID, giftType, giftTotal.
Целью этих объектов было бы использовать их в качестве переменных DataLayer в GTM для подачи показателей в Google Analytics.
Спасибо,
Извините за длину, это мой первый пост, и я не хочу забыть ни одной детали.