Plug-in da Adobe: getValOnce
O plug-in getValOnce
impede que uma variável seja definida com o mesmo valor mais de uma vez. A Adobe recomenda usar esse plug-in quando você deseja desduplicar ocorrências nas quais um visitante atualiza uma página ou visita uma determinada página várias vezes. Esse plug-in é desnecessário se você não se preocupar com a métrica "Ocorrências" no Analysis Workspace.
Instale o plug-in usando a extensão SDK da Web
O Adobe oferece uma extensão que permite usar os plug-ins usados com mais frequência com o SDK da Web.
-
Faça logon na Coleção de dados da Adobe Experience Platform usando suas credenciais da Adobe ID.
-
Clique em Marcas à esquerda e clique na propriedade de marca desejada.
-
Clique em Extensões à esquerda e na guia Catálogo
-
Localize e instale a extensão Plug-ins comuns do SDK da Web.
-
Clique em Elementos de dados à esquerda e, em seguida, clique no elemento de dados desejado.
-
Defina o nome do elemento de dados desejado com a seguinte configuração:
- Extensão: plug-ins comuns do SDK da Web
- Elemento de Dados:
getValOnce
-
Defina os parâmetros desejados à direita.
-
Salve e publique as alterações no elemento de dados.
Instale o plug-in implementando manualmente o SDK da Web
Este plug-in ainda não é compatível com uma implementação manual do SDK da Web.
Instale o plug-in usando a extensão Adobe Analytics.
O Adobe oferece uma extensão que permite usar os plug-ins usados com mais frequência com o Adobe Analytics.
-
Faça logon na Coleção de dados da Adobe Experience Platform usando suas credenciais da Adobe ID.
-
Clique na propriedade de tag desejada.
-
Vá para a guia Extensões e clique no botão Catálogo.
-
Instale e publique a extensão Plug-ins comuns do Analytics.
-
Caso ainda não o tenha feito, crie uma regra denominada "Inicializar plug-ins" com a seguinte configuração:
- Condição: Nenhuma
- Evento: principal – biblioteca carregada (início da página)
-
Adicione à regra acima uma ação com a seguinte configuração:
- Extensão: Plug-ins comuns do Analytics
- Tipo de ação: inicializar getValOnce
-
Salve e publique as alterações na regra.
Instale o plug-in usando o editor de código personalizado do
Se você não quiser usar a extensão de plug-in de plug-ins comuns do Analytics, poderá usar o editor de código personalizado.
- Faça logon na Coleção de dados da Adobe Experience Platform usando suas credenciais da Adobe ID.
- Clique na propriedade desejada.
- Vá até a guia Extensões e clique no botão Configurar na extensão do Adobe Analytics.
- Expanda a opção Configurar rastreamento usando código personalizado, que revela o botão Abrir editor.
- Abra o editor de código personalizado e cole na janela de edição o código do plug-in fornecido abaixo.
- Salve e publique as alterações na extensão do Analytics.
Instalar o plug-in usando o AppMeasurement
Copie e cole o seguinte código em qualquer lugar no arquivo AppMeasurement depois que o objeto de rastreamento do Analytics for instanciado (usando s_gi
). A preservação de comentários e números de versão do código na sua implementação ajuda a Adobe a solucionar possíveis problemas.
/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: getValOnce v3.1 */
function getValOnce(vtc,cn,et,ep){var e=vtc,i=cn,t=et,n=ep; if(arguments&&"-v"===arguments[0])return{plugin:"getValOnce",version:"3.1"};var o=function(){if(void 0!==window.s_c_il){for(var e,i=0;i<window.s_c_il.length;i++)if((e=window.s_c_il[i])._c&&"s_c"===e._c)return e}}();if(void 0!==o&&(o.contextData.getValOnce="3.1"),window.cookieWrite=window.cookieWrite||function(e,i,t){if("string"==typeof e){var n=window.location.hostname,o=window.location.hostname.split(".").length-1;if(n&&!/^[0-9.]+$/.test(n)){o=2<o?o:2;var r=n.lastIndexOf(".");if(0<=r){for(;0<=r&&1<o;)r=n.lastIndexOf(".",r-1),o--;r=0<r?n.substring(r):n}}if(g=r,i=void 0!==i?""+i:"",t||""===i){if(""===i&&(t=-60),"number"==typeof t){var f=new Date;f.setTime(f.getTime()+6e4*t)}else f=t}return!!e&&(document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(i)+"; path=/;"+(t?" expires="+f.toUTCString()+";":"")+(g?" domain="+g+";":""),"undefined"!=typeof cookieRead)&&cookieRead(e)===i}},window.cookieRead=window.cookieRead||function(e){if("string"!=typeof e)return"";e=encodeURIComponent(e);var i=" "+document.cookie,t=i.indexOf(" "+e+"="),n=0>t?t:i.indexOf(";",t);return(e=0>t?"":decodeURIComponent(i.substring(t+2+e.length,0>n?i.length:n)))?e:""},e){var i=i||"s_gvo",t=t||0,n="m"===n?6e4:864e5;if(e!==cookieRead(i)){var r=new Date;return r.setTime(r.getTime()+t*n),cookieWrite(i,e,0===t?0:r),e}}return""}
/******************************************** END CODE TO DEPLOY ********************************************/
Usar o plug-in
A função getValOnce
usa os seguintes argumentos:
vtc
(obrigatório, string): a variável cujo valor será verificado para conferir se já teve anteriormente um valor idênticocn
(opcional, string): o nome do cookie que contém o valor a ser verificado. O padrão é"s_gvo"
et
(opcional, número inteiro): a validade do cookie em dias (ou minutos, dependendo do argumentoep
). O padrão é0
, que expira no final da sessão do navegadorep
(opcional, string): somente defina esse argumento se o argumentoet
também estiver definido. Configure esse argumento como"m"
se desejar que o argumentoet
expire em minutos em vez de dias. O padrão é"d"
, que define o argumentoet
para dias.
Se o argumento vtc
e o valor do cookie corresponderem um ao outro, essa função retornará uma string vazia. Se o argumento vtc
e o valor do cookie não corresponderem um ao outro, a função retornará o argumento vtc
como uma string.
Exemplos
// Prevent the same value from being passed in to the campaign variable more than once in a row for next 30 days
s.campaign = getValOnce(s.campaign,"s_campaign",30);
// Prevent the same value from being passed in to eVar2 more than once in a row for the browser session
s.eVar2 = getValOnce(s.eVar2,"s_ev2");
// Prevent the same value from being passed in to eVar8 more than once in a row for 10 minutes
s.eVar8 = getValOnce(s.eVar8,"s_ev8",10,"m");
Histórico da versão
3.1 (22 de setembro de 2022)
- Correção de um erro de expiração
3.0 (19 de março de 2021)
- Adição do número da versão como dados de contexto.
2,01
- Correção de um problema com a gravação de cookies.
2.0
- Versão pontual (recompilada, menor tamanho de código).
1.1
- Adicionada a opção de escolher minutos ou dias para a expiração por meio do parâmetro
t
. - Corrigido o escopo da variável
k
usada para restringi-la somente ao plug-in. Essa alteração evita possíveis interferências com outros códigos na página.