Magento 2 · Consentimento de cookies · Google Consent Mode v2
Quase todos os banners anunciam a escolha do visitante depois de o contêiner de tags já ter arrancado — e nessa altura a primeira chamada já saiu com tudo concedido. Este entrega o estado antes de o contêiner carregar, mantém um registo que diz que texto o visitante viu realmente, e chega com 53 cookies já classificados, para que o primeiro ecrã não seja uma tabela vazia.
Deixe o seu email e recebe as credenciais do nosso repositório Composer. Nenhuma chave para colar: o módulo ativa-se sozinho para o seu domínio.
Instala-se desligado. Até o ligar, na loja não há um byte a mais.
Magento 2.4.x, PHP de 8.1 a 8.5, qualquer tema. Instala-se com Composer, a partir do nosso repositório.
O estado do consentimento tem um único momento em que conta: antes de o contêiner de tags arrancar. Um banner que anuncia a escolha umas linhas depois está a anunciá-la a um contêiner que já fez a primeira chamada, e essa chamada leva o valor implícito, que é «concedido». Com o nosso módulo de data layer instalado, este entrega o estado para que seja declarado no mesmo script que carrega o contêiner: a única disposição em que é certo que chega primeiro. Sem esse módulo, declara o estado por si.
Medido em lojas vivas antes de construirmos este módulo: o banner do tema declarava o consentimento na linha 71 do código enquanto o contêiner arrancava na 45, e a primeira chamada ao Google levava gcs=G111 — tudo concedido, antes de o visitante ter escolhido fosse o que fosse. Com este módulo essa mesma primeira chamada leva gcs=G100: tudo negado, como deve ser.
Um visitante que concede as estatísticas e recusa a publicidade deve produzir exatamente isso e nada mais. Aqui não tem de acreditar na nossa palavra: abra o painel de rede, conceda apenas as estatísticas, e o pedido que o Google recebe leva gcs=G101 — estatísticas concedidas, publicidade negada. Conceda tudo e passa a G111. Recuse e fica em G100. O visitante escolhe grupos em linguagem clara; os sete sinais das plataformas derivam deles, porque ninguém sabe o que é ad_user_data e toda a gente sabe o que é publicidade.
HTML e CSS puros com um prefixo de classes próprio: desenha-se da mesma forma num tema moderno, no clássico e num feito em casa. Estas são capturas reais da nossa loja de demonstração, não maquetas.
É uma propriedade da estrutura, não uma promessa de folheto: os dois botões saem do mesmo ciclo com a mesma classe, por isso não há nada para estilizar de forma diferente. Não existe nenhuma configuração que esconda a recusa, a encolha, a coloque atrás de um «saber mais» ou a transforme num link cinzento, e não vai existir. Não há um X que feche o banner sem registar nada, porque fechar não é escolher. Uma coisa decide você: se o botão que aceita é preenchido enquanto os outros ficam com contorno. Muda o preenchimento e mais nada.
Medido em ambos os temas: 15488 px² por botão, diferença zero, mesma linha, mesma fonte e o mesmo contraste de texto de 10,75:1 qualquer que seja o destaque escolhido. O banner também recebe o foco do teclado assim que aparece, por isso o primeiro botão está a dois Tab em vez de cinquenta.
Contar quantos aceitaram não prova nada. Cada linha aqui regista os grupos concedidos e os recusados, o que foi realmente enviado a cada plataforma, e uma impressão dos textos exatos que aquele visitante viu — abre uma linha e lê, palavra por palavra, o texto a que aderiu. Há uma referência que o visitante pode citar, o endereço nunca é guardado inteiro, e tudo se exporta para CSV. O registo nunca sai do seu servidor.
É a diferença entre «aceitou» e «aceitou isto». Mude os seus textos e a impressão muda com eles: aos visitantes é perguntado de novo, e cada linha mais antiga continua a remeter para o texto que tinham à frente nesse dia.
A razão pela qual quase todos os módulos de cookies são desligados no primeiro dia é que abrem sobre uma tabela vazia e esperam que preencha quarenta linhas à mão. Este chega com 53 cookies e 4 grupos já classificados — os que o Magento escreve por si, os nossos e os mais comuns de terceiros — cada um com quem o escreve, quanto dura e uma descrição em linguagem clara. Depois o navegador reporta os nomes que vê e que o catálogo não lista: acabam numa fila que classifica com um clique.
Funciona: na nossa própria loja de demonstração o detetor encontrou logo na primeira passagem dois cookies de pagamento que ninguém tinha declarado. Agora estão no catálogo que vem com o módulo.
Remover um cookie depois de escrito é uma limpeza. Não o escrever é consentimento. Um tema Magento moderno traz um portão para os cookies próprios, e este módulo pilota-o em vez de o reimplementar: declara-lhe os seus grupos, para que um cookie de um grupo não permitido nunca seja escrito, e reabre-os no momento em que o visitante escolhe. No tema clássico, onde esse portão não existe, os cookies dos grupos recusados são removidos por nome e por prefixo — e a administração diz claramente em qual das duas situações está o seu tema, em vez de o deixar supor.
A escolha do visitante nunca entra no HTML. Dois visitantes com escolhas opostas recebem páginas idênticas byte a byte, e a decisão é tomada no navegador a partir de um único cookie de cerca de 130 bytes. Conta mais do que parece: um módulo que escreve a escolha dentro da página ou multiplica as suas cópias em cache ou — pior — serve a escolha de um a todos os outros. O único caso em que existe uma cópia a mais é quando configura as regras por país, e então existe exatamente uma.
Este módulo dá-lhe as ferramentas para recolher, aplicar e provar o consentimento. Não o torna conforme: isso depende de como o configura, do que escreve na sua política e do seu consultor. Três limites que vale a pena conhecer antes de instalar, não depois:
Se é a retenção de scripts de terceiros que procura: ative-a, liste os seus endereços, e depois faça uma compra completa na sua loja — em ambos os temas se tiver dois, finalização incluída — antes de a deixar ativa. É a função que pode deixar uma loja sem funcionar, e é precisamente por isso que chega desligada.
Cada campo e cada explicação na configuração estão traduzidos, e também tudo o que os seus visitantes leem: o banner, a janela das preferências, os nomes dos grupos e a descrição de cada um dos 53 cookies que vêm com o módulo. Deixe um campo de texto vazio e obtém o texto de origem no idioma dessa vista de loja. Cada consentimento regista que versão dos textos foi mostrada, por isso uma mudança de tradução também se vê no registo.
O idioma da vista de loja é obtido automaticamente; o inglês é o recurso. Sete idiomas: inglês, italiano, alemão, espanhol, francês, neerlandês e português.
Magento 2.4.x (Open Source ou Adobe Commerce), PHP de 8.1 a 8.5, qualquer tema. O nosso módulo de data layer é aconselhado mas não obrigatório: com ele instalado, o estado do consentimento é declarado no mesmo script que carrega o seu contêiner de tags. O servidor tem de alcançar codingrow.com por HTTPS uma vez por dia para a ativação automática.
O que muda, versão a versão.
Um guia prático de Magento 2 por e-mail, só quando publicamos um. Nada mais.
Os artigos são em inglês. Um clique para cancelar, em cada e-mail. · privacy