Voltar ao blog

Blog

SignalHost para WordPress: Google Tag Manager do lado do servidor e eventos do WooCommerce num só plugin

Publicado · 8 min de leitura

O SignalHost para WordPress ainda não está na WordPress.org. Até lá, pode adicioná-lo à mão: Adicionar a SignalHost à mão

O plugin SignalHost põe o Google Tag Manager do lado do servidor num site WordPress sem colar código. Acrescenta o tracking a todas as páginas, envia eventos do WooCommerce, de formulários e de registos no formato que o seu contentor espera, muda sozinho quando o seu próprio domínio de tracking fica ativo e avisa-o de tudo o que seria contado duas vezes. Este guia segue a ordem em que vai encontrando cada passo: instalar, ligar, verificar e corrigir o que não funciona.

Antes de começar

  • WordPress 6.6 ou posterior com PHP 7.4 ou posterior, e uma conta de administrador.
  • Um endereço do site que comece por https://, que a ligação exige. Os outros sites podem usar o plugin na mesma com um snippet colado, como se descreve mais abaixo.
  • Uma conta SignalHost. O plano gratuito chega para experimentar: 10.000 pedidos por mês e um contentor. Pode criar a conta durante a ligação.
  • O WooCommerce, se quiser eventos da loja. Os eventos de formulários e de registos funcionam sem ele.

1. Instalar o plugin

No WordPress, vá a Plugins → Add New, pesquise SignalHost e, em seguida, instale e ative SignalHost – Server-Side Tag Hosting for Google Tag Manager. O plugin acrescenta uma entrada SignalHost ao menu de administração e não contacta nenhum serviço externo até ligar o site.

2. Ligar o site a um contentor

Abra SignalHost no menu e carregue em Connect with SignalHost, ou em Create a free account se ainda não tiver conta. O navegador vai para signalhost.io e volta quando terminar.

Aí, o ecrã Ligar um site enumera o que o plugin poderá fazer — acrescentar o seu código de tracking a todas as páginas, mantê-lo atualizado e ler o estado do contentor — e o que não poderá: usar a sua conta Google, os tokens das suas plataformas de publicidade ou a sua faturação. Depois pergunta que contentor o site deve usar. Um contentor é o seu próprio servidor de etiquetagem: um contentor web e um contentor de servidor do Tag Manager, construídos na sua própria conta Google, por isso continuam a ser seus.

Escolha um e carregue em Ligar, ou escolha Novo contentor para o seu site e carregue em Criar contentor para abrir o assistente curto, que propõe ligar o site antes de a construção terminar; o plugin acrescenta o código no momento em que o contentor fica pronto. De volta ao WordPress, um aviso indica que o site está ligado.

3. Verificar se funciona

O separador Status é uma lista de verificação que fica verde de cima para baixo: Connected to SignalHost, Tracking code on your site, SignalHost served the code to a visitor e Data arriving. O segundo passo resulta de o plugin abrir a sua página inicial tal como a veria um visitante sem sessão iniciada; Check again repete a verificação.

Abra o seu site num navegador, adicione um produto ao carrinho, envie um formulário. O terceiro passo fica verde até um minuto depois da primeira visita, e Data arriving passa então a contar as visualizações de página dos últimos 7 dias. Log events in the browser console, em Advanced, mostra cada evento no momento em que sai da página, e a partir do plano Growth a página do contentor em signalhost.io lista-os em Monitoramento de eventos ao vivo.

O que o plugin acrescenta ao seu site

O carregador do Google Tag Manager, no head de cada página, apontado para o seu próprio endereço de etiquetagem em vez de googletagmanager.com, colocado depois do seu banner de cookies e excluído das funções de «atrasar JavaScript» dos plugins de desempenho mais comuns. Além das visualizações de página que o seu contentor envia, o plugin envia estes eventos, cada um com o seu próprio event_id, para que a Meta, o TikTok e outras plataformas contem uma só vez um evento do píxel no navegador e o seu gémeo do servidor:

  • WooCommerce: view_item_list, view_item, add_to_cart, remove_from_cart, view_cart, begin_checkout, add_shipping_info, add_payment_info e purchase, tanto com o carrinho e o checkout clássicos como com os baseados em blocos. Cada encomenda é enviada uma vez, com a marca guardada na própria encomenda, por mais vezes que a página de agradecimento seja aberta.
  • Formulários: envios bem-sucedidos do Contact Form 7, WPForms, Gravity Forms, formulários do Elementor Pro e Fluent Forms, como lead (generate_lead), contacto (contact), reserva (schedule), candidatura (submit_application) ou subscrição (subscribe), à escolha para cada formulário.
  • Registos: sign_up quando um visitante cria uma conta, na página de registo, em My Account ou no checkout.

Cada tipo é um interruptor em What is tracked. Os eventos do carrinho, do checkout, de formulários e de registos vêm da sessão do próprio visitante, nunca do HTML da página, por isso uma cache de página não pode entregar o evento de um visitante ao seguinte.

Send customer details for better ad matching fica desligado até o ativar. A partir daí, o e-mail, o telefone e a morada seguem com as conversões apenas quando o visitante aceitou os cookies de publicidade, e são transformados em hash antes de chegarem às plataformas de publicidade. O consentimento segue o seu banner de cookies através do Google Consent Mode; se o seu banner não o definir, escolha aqui Set “denied until consent”, em Consent & privacy.

Se já usa o GTM4WP ou outra etiqueta Google

O plugin lê a sua página inicial, verifica os seus outros plugins e lista em Double-counting check tudo o que seria contado duas vezes: um snippet SignalHost que tenha colado antes, o snippet do Tag Manager da própria Google ou uma etiqueta Google para a mesma propriedade, o Site Kit, o MonsterInsights, o ExactMetrics ou o Google Analytics for WooCommerce.

O GTM4WP tem correções com um clique. Turn off GTM4WP’s container code impede-o de carregar o mesmo contentor diretamente da Google, enquanto a sua camada de dados continua a funcionar; Turn off GTM4WP’s shop tracking deixa os eventos da loja a cargo da SignalHost. Undo reverte qualquer uma das duas.

O seu próprio domínio de tracking

O seu contentor começa num endereço sob signalhost.io. Num plano pago, Configurar o seu próprio domínio, na página do contentor, guia-o na configuração de um subdomínio do seu próprio site, como metrics.oseusite.com, com um único registo DNS. Os navegadores tratam-no como primeira parte, por isso os seus cookies contam como seus e os cliques nos anúncios continuam a ser atribuídos. Quando fica ativo, o plugin muda o seu site para ele no próximo contacto com a SignalHost, normalmente dentro de uma hora, e limpa as caches das suas páginas. Não há nada a substituir à mão.

Adicionar a SignalHost à mão

Também pode usar a SignalHost no WordPress sem o plugin. Em signalhost.io, abra o seu contentor, encontre o snippet no cartão Instalar no seu site e carregue em Copiar. Cole-o no head de cada página, o mais acima possível mas depois do script do seu banner de cookies: serve um plugin de cabeçalho como o WPCode (na caixa Header) ou o header.php do seu tema. Se o site já carrega o Google Tag Manager ou uma etiqueta Google para a mesma propriedade do Analytics, substitua esse snippet em vez de acrescentar um segundo. Depois carregue em Já o fiz.

Isso põe o seu contentor do Tag Manager em todas as páginas, com as visualizações de página e tudo o que o próprio site envie para a camada de dados. Perde tudo o que o plugin acrescenta: os eventos do WooCommerce, de formulários e de registos, o purchase uma só vez por encomenda e as duas verificações. Quando o seu próprio domínio fica ativo, é a si que cabe substituir o snippet.

Para um site que não se consegue ligar, como um sem https://, há um meio-termo: no plugin, escolha I already have a snippet from SignalHost, cole o código e carregue em Use this snippet. Os eventos continuam a fluir, mas o plugin não consegue mudar para o seu próprio domínio nem mostrar se os dados estão a chegar.

Gerir e desligar

Disconnect, no separador Status, pede confirmação uma vez e depois remove de imediato o código de tracking de todas as páginas. O seu contentor e os seus dados mantêm-se, e Connect with SignalHost traz o site de volta a qualquer momento. Definições › Sites ligados, em signalhost.io, também lista o site; Desligar, aí, retira o código no próximo contacto do plugin com a SignalHost, normalmente dentro de uma hora.

Eliminar o plugin desliga o site e remove tudo o que o plugin guardou. Numa cópia de staging, o plugin deteta a mudança de endereço e suspende o tracking, para que o tráfego de teste fique fora dos seus dados reais.

Quando algo não funciona

  • Não há botão Connect: o endereço do site não começa por https://. Use antes I already have a snippet from SignalHost.
  • A ligação é interrompida com uma mensagem sobre uma firewall: um plugin de segurança ou o servidor bloqueia os pedidos para signalhost.io. Autorize-os e carregue de novo em Connect.
  • O código não foi encontrado na sua página inicial: um tema sem wp_head(), uma cache de página ou um plugin de otimização está a removê-lo. Carregue em Clear page caches, em Advanced, e depois em Check again.
  • O código aparece duas vezes na sua página inicial, ou está lá uma cópia antiga: remova o snippet que colou antes no seu tema ou num plugin de cabeçalho.
  • Não foi possível abrir a página inicial a partir deste servidor: uma proteção por palavra-passe, o modo de manutenção ou uma firewall está a impedi-lo. Abra o site num navegador para o verificar aí.
  • Faltam as suas próprias visitas: Do not track administrators está ativo. Visite o site sem sessão iniciada.
  • Qualquer outra coisa: escreva para hello@signalhost.io com o endereço do seu site.

Marcas registadas

A SignalHost é um produto independente da Algorithmo GmbH e não é afiliada nem apoiada pela WordPress Foundation, pela WooCommerce, pela Google, pela Meta ou pelo TikTok. Google Analytics, Google Ads e Google Tag Manager são marcas registadas da Google LLC; Meta é uma marca registada da Meta Platforms, Inc.; TikTok é uma marca registada da ByteDance Ltd.; WordPress é uma marca registada da WordPress Foundation. WooCommerce e os restantes nomes de plugins aqui mencionados são marcas registadas dos respetivos proprietários.

Deixa de perder dados para bloqueadores

Comece gratuitamente. O primeiro contentor fica pronto em poucos minutos.