2015-06-03 2 views
0

Мы находимся в процессе перехода к реализации DTM. У нас есть несколько переменных, которые определяются на странице. Я понимаю, что могу сделать эти переменные доступными в DTM через элементы данных. Могу ли я просто настроить Эль данные,Управление динамическими метками - хранение

Таким образом набор элементов данных

%prop1% = s.prop1 
%prop2% = s.prop2 
etc 

А затем в глобальных правила устанавливают

s.prop1 = %s.prop1% 
s.prop2 = %s.prop2% 
etc 

для каждого EVAR, sprop, события, продукта, чтобы они населяют, когда они устанавливаются на определенной странице. Хорошая идея или ужасная идея? Это похоже на довольно громоздкий подход, который вызывает некоторые тревожные звонки. Другой вариант - написать что-то, что подталкивает все к datalayer, но это похоже на тот же подход с избыточным шагом, когда их можно схватить напрямую.

В основном я хочу, чтобы DTM получал доступ ко всем переменным, которые в настоящее время устанавливаются с помощью кода на странице, и я понимаю, что для этого они должны быть сначала сохранены в элементе данных. Кто-нибудь может понять это?

ответ

1

Если вы переходите от старой реализации s_code к DTM, лучше всего удалить весь существующий код «на странице» (включая ссылку на файл s_code) и создать «слой данных», который содержит данные из eVars и реквизитов на странице. Затем DTM может ссылаться на объект на странице, и вы можете создавать элементы данных, которые сопоставляются с переменными.

Вот пример слоя данных:

<script type="text/javascript"> 

DDO = {} // Data Layer Object Created 
DDO.specVersion = "1.0"; 
DDO.pageData = { 
"pageName":"My Page Name", 
"pageSiteSection":"Home", 
"pageType":"Section Front", 
"pageHier":"DTM Test|Home|Section Front" 
}, 
DDO.siteData = { 
"siteCountry":"us", 
"siteRegion":"unknown", 
"siteLanguage":"en", 
"siteFormat":"Desktop" 
} 

</script> 

Следующим шагом будет создание элементов данных, которые непосредственно ссылаются на значения в объекте. Например, если бы я хотел создать элемент данных, который сопоставляется с именем элемента страницы в моем слое данных я хотел бы сделать следующее в DTM:

  • Создать новый элемент данных, который называется «Pagename»
  • Выберите типа как «JS Object»
  • в поле пути я будет ссылаться на пути к имени страницы в моем примере данных слоя выше - DDO.pageData.pageName
  • Сохранить элемент данных

Теперь эти данные элемент может быть referenc в любом поле переменной в любом правиле, просто набрав «%». DTM найдет любые существующие элементы данных, и вы сможете их выбрать.

Я также написал про простой скрипт, который вы можете добавить к своей реализации, чтобы помочь с проверкой уровня данных. Validate your DTM Data Layer with this simple script

Надеюсь, это поможет.

+0

Очень полезно -.. спасибо My следующий вопрос касается подхода к настройке этого в DTM, поэтому он устанавливает любые и все переменные, которые появляются в слое данных? Создаете ли вы элемент данных для каждой отдельной переменной и затем задаете каждую переменную для заполнения этими элементами глобально? То есть в конфигурации DTM Adobe Analytics сопоставьте каждую переменную с соответствующим элементом данных, чтобы она заполнялась всякий раз, когда она присутствует в слое данных? Есть ли наилучшая практика для захвата и установки всего, что появляется в слое данных на каждой странице? Еще раз спасибо! – MaximusDecimusMeridius

+0

@MaximusDecimusMeridius Прежде всего, необходимо создать элемент данных для каждого измерения данных в слое данных. Следующее - определить, какой из этих элементов данных необходимо установить для каждой загрузки страницы, а затем установить их глобально, используя раздел «Глобальные переменные» в конфигурации инструмента AA или добавив их в правило загрузки глобальной страницы. Я предпочитаю глобальный подход к правилам загрузки страниц для гибкости, но использование раздела «Глобальные переменные» - неплохое начало. –

+0

Правильное глобальное правило pageload - это то, к чему я склоняюсь. Я предполагаю, что мой вопрос заключается в том, что, поскольку у нас есть разные события, которые срабатывают почти на каждой странице (или, по крайней мере, очень большое их число), вы можете сделать это как общий подход. То есть, каждая переменная загружается как глобальная переменная в pageload, но только те, которые содержат значения (те, которые установлены на определенной странице и, следовательно, заполняют их соответствующий элемент данных), будут переданы в AA? – MaximusDecimusMeridius

1

Я использую эту спецификацию для создания слоев данных: Data Layer Standard

Мы создаем элементы данных для каждого ключа, которые мы используем от стандартного уровня данных. Например, имя страницы хранится здесь

digitalData.page.pageInfo.pageName 

Мы создаем элемент данных и стандартизировать названия этого формата «page.pageInfo.. Pagename» Внутри каждое переменное поле, то доступ к нему с% page.pageInfo.pageName% нотации Кроме того, в JavaScript из правил тегов, вы можете использовать это:

_satellite.getVar('page.pageInfo.pageName') 

Это немного громоздким времена, но . позволяет отделить развитие тегов уровня данных и менеджер тегов полностью

Одна вещь, чтобы отметить, убедитесь, что ваш слой данных завершен и загружен до вызова библиотеки спутникового

Смежные вопросы