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 o Gerente de conta de sua organização. Ele pode organizar uma reunião com um consultor para obter ajuda.
O plug-in getPageName
cria uma versão formatada amigável e fácil de ler do URL atual. A Adobe recomenda usar esse plug-in se você quiser um valor de pageName
fácil de definir e de entender nos relatórios. Esse plug-in será desnecessário se você já tiver uma estrutura de nomeação para a variável pageName
, como por meio de uma camada de dados. Ele é melhor usado quando você não tem outra solução para definir a variável pageName
.
A Adobe oferece uma extensão que permite usar os plug-ins usados com mais frequência.
Se você não quiser usar a extensão do plug-in, poderá usar o editor de código personalizado.
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: getPageName v4.0 */
var getPageName=function(si,qv,hv,de){var c=location.hostname,f=location.pathname.substring(1).split("/"),h=f.length, g=location.search.substring(1).split("&"),l=g.length,k=location.hash.substring(1).split("&"),m=k.length;de=de?de:": ";si=si?si:c;qv= qv?qv:"";hv=hv?hv:"";if(1===h&&""===f[0])si=si+de+"home";else for(c=0;c<h;c++)si=si+de+decodeURIComponent(f[c]); if(qv&&(1!==l||""!== g[0]))for(f=qv.split(","),h=f.length,c=0;c<h;c++)for(qv=0;qv<l;qv++)if(f[c]===g[qv].split("=")[0]){si=si+de+decodeURIComponent(g[qv]);break}if(hv&&(1!==m||""!==k[0]))for(hv=hv.split(","),g=hv.length,c=0;c<g;c++)for(qv=0;qv<m;qv++)if(hv[c]===k[qv].split("=")[0]){si=si+de+decodeURIComponent(k[qv]);break}return si.substring(si.length-de.length)===de?si.substring(0,si.length-de.length):si};
/******************************************** END CODE TO DEPLOY ********************************************/
O método getPageName
aceita os seguintes argumentos:
si
(opcional, string): uma ID inserida no início da string que representa a ID do site. Esse valor pode ser uma ID numérica ou um nome amigável. Quando não estiver definido, o padrão será o domínio atual.qv
(opcional, string): uma lista, delimitada por vírgulas, de parâmetros da string de consulta que, se encontrados no URL, são adicionados à stringhv
(opcional, string): uma lista de parâmetros delimitada por vírgulas encontrada no hash do URL que, se encontrados no URL, são adicionados à stringde
(opcional, string): o delimitador usado para dividir partes individuais da string. O padrão é uma barra vertical (|
).O método retorna uma string que contém uma versão amigável do URL. Normalmente, essa string é atribuída à variável pageName
, mas também pode ser usada em outras variáveis.
Se o URL atual fosse…
https://mail.google.com/mail/u/0/#inbox
… e o código a seguir for executado…
s.pageName = getPageName()
… o valor final de s.pageName será:
s.pageName = "mail.google.com|mail|u|0";
Se o URL atual fosse…
https://mail.google.com/mail/u/0/#inbox
… e o código a seguir for executado…
s.pageName = getPageName("gmail")
… o valor final de s.pageName será:
s.pageName = "gmail|mail|u|0";
Se o URL atual fosse…
https://www.google.com/
… e o código a seguir for executado…
s.pageName = getPageName()
… o valor final de s.pageName será:
s.pageName = "www.google.com|home"
Observação: quando o código é executado em um URL que não contém um caminho, ele sempre adicionará o valor de "home" ao final do valor de retorno
Se o URL atual fosse…
https://www.google.com/
… e o código a seguir for executado…
s.pageName = getPageName("google","","","|")
… o valor final de s.pageName será:
s.pageName = "google|home"
Se o URL atual fosse…
https://www.hotelrooms.com/en/booking/room-booking.html?cid=1235#/step2&arrive=2018-05-26&depart=2018-05-27&numGuests=2
… e o código a seguir for executado…
s.pageName = getPageName()
… o valor final de s.pageName será:
s.pageName = "www.hotelrooms.com|en|booking|room-booking.html"
No entanto, se, em vez disso, o código a seguir for executado…
s.pageName = getPageName("hotelrooms","cid","arrive,numGuests",": ")
… o valor final de s.pageName será:
s.pageName = "hotelrooms: en: booking: room-booking.html: cid=1235: arrive=2018-05-26: numGuests=2"
A versão 4.0+ do plug-in getPageName não depende da existência do objeto AppMeasurement do Adobe Analytics (ou seja, do objeto "s") para ser executado. Se você optar por atualizar para esta versão, altere o código que chama o plug-in removendo qualquer instância do objeto "s" da chamada.
Por exemplo, altere isso:
s.pageName = s.getPageName();
…para isto:
s.pageName = getPageName();