Plug-in da Adobe: rfl (Remover da lista)

IMPORTANT
Esse plug-in é fornecido pela Adobe Consulting como cortesia para ajudar você a tirar maior proveito do Adobe Analytics. O Atendimento ao cliente da Adobe não fornece suporte para este plug-in, o que inclui instalação ou solução de problemas. Se você precisar de ajuda com esse plug-in, entre em contato com a Equipe de conta da Adobe de sua organização. Ele pode organizar uma reunião com um consultor para obter ajuda.

O plug-in rfl permite que você remova com "segurança" valores de strings delimitadas, como events, products, list e outras. Esse plug-in é útil se você deseja remover valores específicos de uma string delimitada sem se preocupar com delimitadores. Vários outros plug-ins dependem desse código para serem executados corretamente. Esse plug-in não é necessário se você não precisar executar uma função específica em mais de uma variável do Analytics por vez ou se não estiver usando plug-ins dependentes.

O plug-in usa a seguinte lógica:

  • Se o valor que você deseja remover existir, o plug-in manterá tudo na variável, exceto o valor a ser removido.
  • Se o valor que você deseja remover não existir, o plug-in manterá a string original como está.

Instale o plug-in usando a extensão SDK da Web ou SDK da Web.

Este plug-in ainda não é compatível com o 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.

  1. Faça logon na Coleção de dados da Adobe Experience Platform usando suas credenciais da Adobe ID.

  2. Clique na propriedade de tag desejada.

  3. Vá para a guia Extensões e clique no botão Catálogo.

  4. Instale e publique a extensão Plug-ins comuns do Analytics.

  5. 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)
  6. Adicione à regra acima uma ação com a seguinte configuração:

    • Extensão: Plug-ins comuns do Analytics
    • Tipo de ação: inicializar RFP (Remover da lista)
  7. 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.

  1. Faça logon na Coleção de dados da Adobe Experience Platform usando suas credenciais da Adobe ID.
  2. Clique na propriedade desejada.
  3. Vá até a guia Extensões e clique no botão Configurar na extensão do Adobe Analytics.
  4. Expanda a opção Configurar rastreamento usando código personalizado, que revela o botão Abrir editor.
  5. Abra o editor de código personalizado e cole na janela de edição o código do plug-in fornecido abaixo.
  6. 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: rfl (removeFromList) v2.1  */
function rfl(lv,vr,d1,d2,df){var b=lv,f=vr,e=d1,h=d2,g=df;if("-v"===b)return{plugin:"rfl",version:"2.1"};a:{if("undefined"!==typeof window.s_c_il){var c=0;for(var a;c<window.s_c_il.length;c++)if(a=window.s_c_il[c],a._c&&"s_c"===a._c){c=a;break a}}c=void 0}"undefined"!==typeof c&&(c.contextData.rfl="2.1");if(!b||!f)return"";c=[];a="";e=e||",";h=h||e;g=g||!1;b=b.split(e);e=b.length;for(var d=0;d<e;d++)-1<b[d].indexOf(":")&&(a=b[d].split(":"),a[1]=a[0]+":"+a[1],b[d]=a[0]),-1<b[d].indexOf("=")&&(a=b[d].split("="),a[1]=a[0]+"="+a[1],b[d]=a[0]),b[d]!==f&&a?c.push(a[1]):b[d]!==f?c.push(b[d]):b[d]===f&&g&&(a?c.push(a[1]):c.push(b[d]),g=!1),a="";return c.join(h)};
/******************************************** END CODE TO DEPLOY ********************************************/

Usar o plug-in

A função rfl usa os seguintes argumentos:

  • lv (obrigatório, string): uma variável (ou string) que contém uma lista de valores delimitados.
  • vr (obrigatório, string): o valor que você deseja remover do argumento lv. A Adobe recomenda a remoção de vários valores durante uma única chamada do rfl.
  • d1 (opcional, string): o delimitador usado pelo argumento lv. O padrão é uma vírgula (,).
  • d2 (opcional, string): o delimitador que você deseja que a string de retorno use. O padrão é o mesmo valor do argumento d1.
  • df (opcional, booleano): se true, força apenas instâncias duplicadas do argumento vr a partir do argumento lv em vez de todas as instâncias. O valor padrão é false quando um valor não está definido.

Chamar essa função retorna uma string modificada que contém o argumento lv, porém, sem nenhuma instância (ou instâncias duplicadas) do valor especificado no argumento vr.

Exemplos de chamadas

Exemplo #1

Se…

s.events = "event22,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event24");

… o valor final de s.events será…

s.events = "event22,event25";

Exemplo #2

Se…

s.events = "event22,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event26");

… o valor final de s.events será…

s.events = "event22,event24,event25";

Neste exemplo, a chamada rfl não fez alterações em s.events, pois s.events não continham "event26".

Exemplo #3

Se…

s.events = "event22,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events);

… o valor final de s.events será…

s.events = "";

Se o argumento lv ou vr estiver em branco em uma chamada rfl, o plug-in não retornará nada.

Exemplo #4

Se…

s.prop4 = "hello|people|today";

… e o código a seguir for executado…

s.eVar5 = rfl(s.prop4,"people","|");

… o valor final de s.prop4 ainda será…

s.prop4 = "hello|people|today";

… mas o valor final de s.eVar5 será:

s.eVar5 = "hello|today";

Lembre-se que o plug-in retorna apenas um valor; na verdade, ele não “redefine” a variável transmitida pelo argumento lv.

Exemplo #5

Se…

s.prop4 = "hello|people|today";

… e o código a seguir for executado…

s.prop4 = rfl(s.prop4,"people");

… o valor final de s.prop4 ainda será…

s.prop4 = "hello|people|today";

Defina o argumento d1 nos casos em que o valor do argumento lv contém um delimitador diferente do valor padrão (ou seja, vírgula).

Exemplo #6

Se…

s.events = "event22,event23,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"EVenT23");

… o valor final de s.events será…

s.events = "event22,event23,event25";

Embora esse exemplo não seja prático, demonstra a necessidade de transmitir valores que diferenciam maiúsculas e minúsculas.

Exemplo #7

Se…

s.events = "event22,event23:12345,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23");

… o valor final de s.events será…

s.events = "event22,event25";

Exemplo #8

Se…

s.events = "event22,event23:12345,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23:12345");

… o valor final de s.events será…

s.events = "event22,event23:12345,event25";

Quando for necessário remover um evento que use serialização e/ou sintaxe numérica/de moeda, você deverá especificar somente o evento em si (ou seja, sem os valores de serialização/numérico/de moeda) na chamada rfl.

Exemplo #9

Se…

s.events = "event22,event23,event23,event23,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23");

… o valor final de s.events será…

s.events = "event22,event24,event25");

Exemplo #10

Se…

s.events = "event22,event23,event23,event23,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23", "", "",true);

… o valor final de s.events será…

s.events = "event22,event23,event24,event25");

Exemplo #11

Se…

s.events = "event22,event23,event23,event23,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23", "", "|",true);

… o valor final de s.events será…

s.events = "event22|event23|event24|event25");

Exemplo #12

Se…

s.events = "event22,event23,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23,event24");

… o valor final de s.events será…

s.events = "event22,event23,event24,event25";

Não há suporte para a configuração de vários valores no argumento vr A lógica do rfl no exemplo acima dividiria primeiro os valores no argumento lv (ou seja, s.events) e, em seguida, tentaria corresponder cada valor delimitado ao valor completo do argumento vr (ou seja, "event23,event24").

Exemplo #13

Se…

s.events = "event22,event23,event24,event25";

… e o código a seguir for executado…

s.events = rfl(s.events,"event23");
s.events = rfl(s.events,"event24");

… o valor final de s.events será…

s.events = "event22,event25");

Cada valor a ser removido da lista deve estar contido em sua própria chamada rfl.

Exemplo #14

Se…

s.linkTrackVars = "events,eVar1,eVar2,eVar3";

… e o código a seguir for executado…

s.linkTrackVars = rfl(s.linkTrackVars,"eVar2", ",", ",", false);

… o valor final de s.linkTrackVars será:

s.linkTrackVars = "events,eVar1,eVar3";

Os três últimos argumentos (ou seja, ",",",",false) no final desta chamada rfl não são necessários, mas também não estão “prejudicando em nada” por estarem presentes, pois correspondem às configurações padrão.

Exemplo #15

Se…

s.events = "event22,event23,event24";

… e o código a seguir for executado…

rfl(s.events,"event23");

… o valor final de s.events ainda será:

s.events = "event22,event23,event24";

Novamente, lembre-se de que o plug-in retorna apenas um valor; na verdade, ele não “redefine” a variável transmitida pelo argumento lv.

Histórico da versão

2.1 (19 de março de 2021)

  • Adição do número da versão como dados de contexto.

2.01 (17 de setembro de 2019)

  • Correção de pequeno erro no valor padrão do delimitador.

2.0 (16 de abril de 2018)

  • Versão pontual (recompilada, menor tamanho de código).
  • Foi removida a necessidade do plug-in join.

1.0 (18 de julho de 2016)

  • Versão inicial.
recommendation-more-help
b4f6d761-4a8b-4322-b801-c85b9e3be690