1.3K Usuários online agora
Faça perguntas sobre relatórios personalizados do Google Analytics, o uso da API e do Google Tag Manager e outros recursos avançados
Guie-me
star_border
Responder

Eventos Tag Manager

Calouro ✭ ✭

Pessoal, alguem por gentileza pode me orientar.

Na página que preciso taguear o botão, possuo somente os atributos:

- Class (que se repete em vários eventos) e 

- Data-acao="/veja/veiculos/ford/usados.aspx" ==$0

como vários eventos usam a mesma classe, como faço para pegar o valor do "data-acao", tagueando o evento pelo tag manager para que no analytics eu consiga diferenciar qual botão foi acionado??

Especialistas responderamverified_user

Soluções aceitas
Marcado como Melhor Resposta.
Solução
Aceita pelo autor do tópico Andre m
Outubro 2016

Eventos Tag Manager

Principal Colaborador

Você pode diferenciar o botão pelo texto do botão usando a variável {{Click Text}} como condição do acionador de clique para o evento que deseja criar:

 

{{Click Text}}  IGUAL   Compre Seminovos

 

Se o botão for imagem e não tiver texto, você pode ainda criar uma variável javascript personalizada {{Data-acao}} usando um código do tipo:


function() {
    return {{Click Element}}.getAttribute("Data-acao") || null;
}

 

Depois incluir a condição no acionador do clique para o evento

 

{{Data-acao}}  IGUAL   /veja/veiculos/ford/usados.aspx

 

 

___

"Você não precisa de uma empresa de 100 funcionários para desenvolver aquela ideia" ~Larry Page

Exibir solução no post original


Todas as respostas

Eventos Tag Manager

[ Editado ]
Principal Colaborador

@Andre M, tudo bem?

 

Você pode usar uma variável do tipo javascript personalizado para criar selecionar esse único botão, usando um pouco de DOM. Uma outra opção seria fazer um "merge" entre essa informação e text do botão, já que ele não possui um ID ou Class exclusivo. 

 

Pelo o que eu entendi do problema isso resolveria, mas para ter certeza precisaria dar uma olhada na página em questão.

 

Espero ter ajudado.

 

Ricardo Gaya

Eventos Tag Manager

Calouro ✭ ✭

Ricardo, pode dar um exemplo mais detalhado do scrit?

Obrigado pela ajuda

 

Re: Eventos Tag Manager

Principal Colaborador

@Andre m,

 

Você pode fazer algo tipo:

 

 

var seuElemento = document.getElementById("div1");
var seuElementoComAtributo = div1.getAttribute("data-acao");

 

 

Esse é um exemplo de como dar um get. Ok? Não sei como esta sua página em questão por isso você terá que personalizar de acordo com os elementos que você tem.

 

Um outra forma seria algo como:

 

 

function getAllElementsWithAttribute(attribute)
{
  var matchingElements = [];
  var allElements = document.getElementsByTagName('*');
  for (var i = 0, n = allElements.length; i < n; i++)
  {
    if (allElements[i].getAttribute(attribute) !== null)
    {
      // Element exists with attribute. Add to array.
      matchingElements.push(allElements[i]);
    }
  }
  return matchingElements;
}

 

 

E depois só chamar :

 

 

getAllElementsWithAttribute('data-acao');

 

 

Essa função esta disponível no Stack Overflow.

 

No GTM, basta criar uma var do tipo javascript personalizado para usar essa function. Acredito que atenda bem o seu caso, mas para ter certeza apenas testando na páginas em questão. Smiley feliz

 

 

Ricardo Gaya
Marcado como Melhor Resposta.
Solução
Aceita pelo autor do tópico Andre m
Outubro 2016

Eventos Tag Manager

Principal Colaborador

Você pode diferenciar o botão pelo texto do botão usando a variável {{Click Text}} como condição do acionador de clique para o evento que deseja criar:

 

{{Click Text}}  IGUAL   Compre Seminovos

 

Se o botão for imagem e não tiver texto, você pode ainda criar uma variável javascript personalizada {{Data-acao}} usando um código do tipo:


function() {
    return {{Click Element}}.getAttribute("Data-acao") || null;
}

 

Depois incluir a condição no acionador do clique para o evento

 

{{Data-acao}}  IGUAL   /veja/veiculos/ford/usados.aspx

 

 

___

"Você não precisa de uma empresa de 100 funcionários para desenvolver aquela ideia" ~Larry Page

Eventos Tag Manager

Calouro ✭ ✭

Muito grato pela ajuda.

Gravit, tenho usado {{Click Text}} como valor no atributo pra saber qual o evento acionado, mas queria também pegar o valor do data-acao que é o link que referencia para a página.. valew Gaya, vou implementar e testar os dois modelos.