Show Menu
TEMAS×

Ampliación del seguimiento de eventos

AEM Analytics le permite realizar un seguimiento de la interacción del usuario en su sitio web. Como desarrollador, es posible que necesite:
Esta información es básicamente genérica, pero utiliza Adobe Analytics para ejemplos específicos.
Para obtener información general sobre el desarrollo de componentes y cuadros de diálogo, consulte Desarrollo de componentes .

Eventos personalizados

Los eventos personalizados realizan un seguimiento de todo lo que dependa de la disponibilidad de un componente específico en la página. Esto también incluye eventos específicos de la plantilla, ya que el componente de página se trata como otro componente.

Seguimiento de eventos personalizados al cargar la página

Esto se puede hacer con el pseudoatributo data-tracking (el atributo de registro anterior aún se admite para la compatibilidad con versiones anteriores). Puede agregarlo a cualquier etiqueta HTML.
La sintaxis para data-tracking es
  • data-tracking="{'event': ['eventName'], 'values': {'key': 'value', 'nextKey': 'nextValue'}, componentPath: 'myapp/component/mycomponent'}"
Puede pasar cualquier número de pares clave-valor como el segundo parámetro, que se denomina carga útil.
Un ejemplo podría tener el siguiente aspecto:
<span data-tracking="{event:'blogEntryView', 
                                values:{
                                   'blogEntryContentType': 'blog', 
                                   'blogEntryUniqueID': '<%= xssAPI.encodeForJSString(entry.getId()) %>',
                                   'blogEntryTitle': '<%= xssAPI.encodeForJSString(entry.getTitle()) %>',
                                   'blogEntryAuthor':'<%= xssAPI.encodeForJSString(entry.getAuthor()) %>',
                                   'blogEntryPageLanguage':'<%= currentPage.getLanguage(true) %>'
                                },
                                componentPath:'myapp/component/mycomponent'}">
</span>

Al cargar la página, todos data-tracking los atributos se recopilarán y agregarán al almacén de eventos de ContextHub, donde se pueden asignar a eventos de Adobe Analytics. Adobe Analytics no rastreará los eventos que no estén asignados. Consulte Conexión a Adobe Analytics para obtener más información sobre la asignación de eventos.

Seguimiento de eventos personalizados después de la carga de la página

Para rastrear los eventos que se producen después de cargar una página (como las interacciones del usuario), utilice la función CQ_Analytics.record JavaScript:
  • CQ_Analytics.record({event: 'eventName', values: { valueName: 'VALUE' }, collect: false, options: { obj: this, defaultLinkType: 'X' }, componentPath: '<%=resource.getResourceType()%>'})
Dónde
  • events es una cadena o una matriz de cadenas (para varios eventos).
  • values contiene todos los valores para rastrear
  • collect es opcional y devuelve una matriz que contiene el evento y el objeto de datos.
  • options es opcional y contiene opciones de seguimiento de vínculos como elemento HTML obj y [defaultLinkType](https://microsite.omniture.com/t2/help/en_US/sc/implement/index.html#linkType) .
  • componentPath es un atributo necesario y se recomienda establecerlo en <%=resource.getResourceType()%>
Por ejemplo, con la siguiente definición, si un usuario hace clic en el vínculo Saltar al principio , se activarán los dos eventos jumptop y headlineclick :
<h1 data-tracking="{event: 'headline', values: {level:'1'}, componentPath: '<%=resource.getResourceType()%>'}">
  My Headline <a href="#" onclick="CQ_Analytics.record({event: ['jumptop','headlineclick'],  values: {level:'1'}, componentPath: '<%=resource.getResourceType()%>'})">Jump to top</a>
</h1>

Acceso a los valores en ContextHub

La API JavaScript de ContextHub tiene una getStore(name) función que devuelve la tienda especificada, si está disponible. El almacén tiene una getItem(key) función que devuelve el valor de la clave especificada, si está disponible. Con la getKeys() función es posible recuperar una matriz de claves definidas para el almacén específico.
Puede recibir notificaciones de cambios de valor en un almacén enlazando una función mediante la ContextHub.getStore(name).eventing.on(ContextHub.Constants.EVENT_STORE_UPDATED, handler, selector, triggerForPastEvents) función .
La mejor manera de recibir notificaciones de la disponibilidad inicial de ContextHub es utilizar la ContextHub.eventing.on(ContextHub.Constants.EVENT_ALL_STORES_READY, handler, selector, triggerForPastEvents); función.
Eventos adicionales para ContextHub:
Todas las tiendas están listas para:
ContextHub.eventing.on(ContextHub.Constants.EVENT_ALL_STORES_READY, handler, selector, triggerForPastEvents);
Específico de la tienda:
ContextHub.getStore(store).eventing.on(ContextHub.Constants.EVENT_STORE_READY, handler, selector, triggerForPastEvents)
Consulte también la Referencia completa de la API de ContextHub

Adición de llamadas de registro

Las rellamadas antes y después se registran mediante las funciones CQ_Analytics.registerBeforeCallback(callback,rank) y CQ_Analytics.registerAfterCallback(callback,rank) .
Ambas funciones toman una función como el primer argumento y una clasificación como el segundo argumento, que dicta el orden en que se ejecutan las rellamadas.
Si la llamada de retorno devuelve false, no se ejecutarán las llamadas de retorno siguientes en la cadena de ejecución.