Documentação
Como ativo o *plugin*?
Após adquirir o Referral Source Tracking para WPForms, você precisará instalar o plugin em seu site WordPress. Vamos percorrer esse processo.
Passo 1: Instalação
Inicie sessão no seu site WordPress e navegue até Plugins > Adicionar plugin > Carregar plugin > Instale o ficheiro zip e ative-o.
Passo 2: Registar o Plugin
Na barra de navegação à esquerda, acesse WPForms > Rastreamento de Indicações.
Insira sua chave de licença e ative-a.
Passo 3: Ativar o recurso
Após ativar sua licença, uma aba “Geral” aparecerá na página de configurações de Rastreamento de Indicações. Clique nela e depois em “Salvar alterações”.
Pronto! Agora o rastreamento da origem das referências estará ativo em todos os formulários existentes ou em novos formulários que você criar.
Detalhes da Funcionalidade
Fontes que detecta
Capturamos o URL de referência quando disponível. e armazenamos essa informação na entrada. Também aplicamos rótulos amigáveis para plataformas comuns, para que a origem seja facilmente compreendida à primeira vista.
Segue a lista de fontes que são rotuladas quando detectadas:
- Google: Google Ads, Google Orgânico, Gemini
- Microsoft/Bing: Anúncios da Microsoft, Bing Orgânico
- Facebook: Anúncios do Facebook, Publicidade Orgânica do Facebook
- LinkedIn: Anúncios do LinkedIn, resultados orgânicos do LinkedIn
- X (Twitter): X anúncios, X orgânico
- Reddit: Anúncios do Reddit, Reddit Orgânico
- TikTok: Anúncios do TikTok, TikTok Orgânico
- Pinterest: Anúncios do Pinterest, Pinterest Orgânico
- Snapchat: Anúncios do Snapchat, Snapchat Orgânico
- Outros mecanismos de busca: Yahoo, DuckDuckGo, Yandex
- Assistentes de IA (quando disponíveis): ChatGPT, Perplexidade, Microsoft Copilot, Claude, Grok, DeepSeek
- Plataformas de e-mail (rastreamento de campanhas): Mailchimp, Constant Contact, Salesforce Pardot, HubSpot
- Direto e Desconhecido São utilizados quando apropriado.
- Personalizado Também é possível adicionar fontes!
Parâmetros UTM que ele captura
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_id
IDs de cliques capturados
gclidgbraidwbraidmsclkidli_fat_idrdt_cidttclidpin_cidsnap_cidmc_cidmc_eiddclid
Etiquetas inteligentes
{pb_ref_source} – o rótulo da fonte de referência detectada (o padrão é “Desconhecido” quando a visita não pôde ser classificada).
{pb_ref_params} – sequência completa de parâmetros de referência capturados (UTMs e outras variáveis de consulta mantidas juntas).
{pb_ref_referrer} – navegador de origem que trouxe o visitante ao site.
{pb_ref_utm_id} – capturado utm_id.
{pb_ref_utm_source} – capturado utm_source.
{pb_ref_utm_medium} – capturado utm_medium.
{pb_ref_utm_campaign} – capturado utm_campaign.
{pb_ref_utm_term} – capturado utm_term.
{pb_ref_utm_content} – capturado utm_content.
{pb_ref_clid} – o primeiro ID de clique detectado (gclid, fbclid, msclkid, etc).
Traduções
Este plugin está totalmente pronto para tradução. Você pode traduzi-lo para qualquer idioma usando a versão gratuita. Loco Translate plugin ou qualquer outra ferramenta de tradução do WordPress.
Idioma padrão: inglês (en_US)
Perguntas Frequentes
Funciona com o WPForms Lite?
Sim. A captura de rastreamento de referências e o processamento de Smart Tags funcionam com WPForms Lite. No entanto, o WPForms Lite tem uma interface de gerenciamento de entradas limitada em comparação com o Pro — as colunas da lista de entradas, a barra lateral de rastreamento de referências de entrada única e a integração de exportação de CSV exigem o WPForms Pro.
Posso exportar os dados?
Sim. Os valores de rastreamento são incluídos nas exportações CSV do WPForms. Todos os campos de referência (origem, referenciador, UTMs, ID do clique e outros) são adicionados automaticamente como colunas de exportação.
O que exatamente o plugin captura?
Capturamos os campos de atribuição comuns e os armazenamos junto com cada entrada do WPForms, incluindo: parâmetros UTM (fonte, meio, campanha, termo, conteúdo), IDs de clique (gclid, msclkid, gbraid/wbraid, etc.), o URL de referência original, e o contexto da página de destino correspondente, para que você possa ver claramente de onde veio cada lead.
Posso adicionar fontes personalizadas?
Sim! Seja um site de referência, uma parceria de afiliados, etc., você pode adicionar fontes personalizadas com rótulos claros.
Onde os dados de referência são armazenados?
Em seu banco de dados WordPress, em uma tabela de plugin dedicada e vinculada às entradas do WPForms. Não enviamos conversões ou eventos para plataformas de anúncios.
Trata-se de atribuição de primeiro ou último contato?
Este plugin se concentra em atribuição de primeiro contato armazenando o original Parâmetros de referência e campanha que trouxeram o visitante ao seu site (dentro do período de retenção).
Por quanto tempo o sistema armazena os dados de atribuição de um visitante?
O período de retenção é 7 dias. Se um visitante enviar um formulário dentro de 7 dias após sua primeira visita registrada, os valores de atribuição originais serão aplicados à entrada.
Funciona com cache/CDNs?
Geralmente, sim. O rastreamento é executado no lado do cliente, então a maioria das configurações de cache/CDN funciona bem. Se você usa otimização de script agressiva (minificação/adiamento), exclua os scripts do plugin abaixo e teste um envio:
/wp-content/plugins/pb-wpforms-referral-tracking/assets/dist/js.cookie.min.js/wp-content/plugins/pb-wpforms-referral-tracking/assets/js/front-end.js
Funciona com WPForms habilitados para AJAX?
Sim. Funciona com formulários AJAX (padrão do WPForms) e com envios padrão.
Posso acompanhar mais de um formulário?
Sim. Funciona em todos os seus formulários WPForms — cada envio salva seus próprios valores de atribuição para aquela entrada.
Isso substitui o GA4 / acompanhamento de conversões do Google Ads?
Não. Este plugin não dispara pixels nem envia eventos de conversão para o Google Analytics 4 ou plataformas de anúncios. Ele armazena dados de atribuição. dentro da entrada do WPForms, Assim, sua equipe poderá visualizar os dados da fonte de leads diretamente no WordPress e exportá-los.
Coleta dados pessoais?
Por padrão, ele captura dados de atribuição (UTMs, gclid, URLs de referência). Isso faz não Por padrão, capturamos informações pessoais adicionais. Os campos do seu formulário e quaisquer parâmetros incluídos nos URLs são controlados pelas configurações do seu site e de marketing.
Está em conformidade com o GDPR/CCPA?
Pode ser usado de forma compatível com o GDPR/CCPA. O plugin armazena dados de atribuição juntamente com suas entradas e não transmite eventos para plataformas de anúncios. Você é responsável pelo consentimento/interesse legítimo e pela divulgação adequada para sua configuração específica.
Funciona com uma rede WordPress Multisite?
Resumindo:
- Licença ilimitada: Ative o Modo de Rede uma vez; uma única tecla pode gerenciar tudo. todos os / cada Configurações e suporte do subsite.
- Ativado pela rede: Todos os sub-sites executam o rastreamento de referências e recebem atualizações imediatamente.
- Plano limitado / sem licença para subsite: O rastreamento permanece ativado, mas as configurações do subsite são somente leitura.
- O suporte segue a licença: Os sites abrangidos pela chave ativa são elegíveis.
Sim; o plugin funciona imediatamente em todos os subdomínios assim que você o ativa na rede.—Nenhuma configuração manual é necessária. Cada subsite pode usar o rastreamento e receber atualizações mesmo sem uma licença local. Para alterar as configurações de formulário ou obter suporte direto em um subsite, você ainda precisa ativar uma licença nesse local.
Se você possui uma licença ilimitada, pode ativar o Modo de Rede no site principal e enviar essa chave única para todos os subsites em lote (com acompanhamento em tempo real). Esses subsites herdam automaticamente as configurações e o suporte gerenciados pela licença.
Ganchos
Ações
pb_wpforms_referral_tracking_loaded
É acionado após a inicialização completa do plugin — todas as classes são carregadas, os hooks são registrados e a API está pronta. Este é o ponto de partida confiável para complementos ou plugins adicionais que estendem o Rastreamento de Origem de Referência.
Parâmetros:
$plugin(Plugin) — A instância do plugin.
add_action( 'pb_wpforms_referral_tracking_loaded', function( $plugin ) {
// Safe to interact with the plugin's classes and filters here.
// Example: register your own add-on after the plugin is ready.
if ( class_exists( 'MyReferralAddon' ) ) {
new MyReferralAddon( $plugin );
}
} );Filtros
pb_wpforms_referral_tracking_enabled
Defina se o rastreamento de referências está ativado para um formulário específico. Retorne `true` para forçar o rastreamento a ser ativado e `false` para forçá-lo a ser desativado, independentemente da configuração específica do formulário ou do padrão global.
Parâmetros:
$enabled(bool) — Indica se o rastreamento está ativado no momento.$form_id(int) — O ID do formulário atual.$form_data(array|nulo) — A matriz de dados do formulário, ou nulo se não estiver disponível.
Exemplo de uso:
// Disable tracking on a specific form (e.g. an internal staff-only form).
add_filter( 'pb_wpforms_referral_tracking_enabled', function( $enabled, $form_id, $form_data ) {
$excluded_form_ids = [ 12, 27 ];
if ( in_array( $form_id, $excluded_form_ids, true ) ) {
return false;
}
return $enabled;
}, 10, 3 );pb_wpforms_referral_tracking_merge_tag_map
Modifique o mapa de Smart Tags que define quais Smart Tags estão disponíveis e a quais chaves de rastreamento elas correspondem. Use isso para adicionar Smart Tags totalmente personalizadas ou renomear as existentes.
Parâmetros:
$map(variedade) — Matriz associativa de tag => chave de rastreamento (ex:.'pb_ref_source' => 'source').
Exemplo de uso:
// Add a custom Smart Tag that maps to a custom tracking key.
add_filter( 'pb_wpforms_referral_tracking_merge_tag_map', function( $map ) {
$map['pb_ref_landing_page'] = 'landing_page';
return $map;
} );pb_wpforms_referral_tracking_value
Filtra um valor de rastreamento bruto antes que ele seja usado para substituir uma Smart Tag em uma notificação ou confirmação. Útil para higienizar ou transformar valores específicos.
Parâmetros:
$value(corda) — O valor bruto de rastreamento.$tag(corda) — A chave Smart Tag (por exemplo.pb_ref_source).$form_data(variedade) — A matriz de dados do formulário.$fields(variedade) — Os campos de entrada.$entry_id(int) — O ID de entrada.
Exemplo de uso:
// Truncate long referrer URLs in Smart Tag output.
add_filter( 'pb_wpforms_referral_tracking_value', function( $value, $tag, $form_data, $fields, $entry_id ) {
if ( $tag === 'pb_ref_referrer' && strlen( $value ) > 100 ) {
return substr( $value, 0, 100 ) . '…';
}
return $value;
}, 10, 5 );pb_wpforms_referral_tracking_formatted_value
Filtre o valor da Smart Tag totalmente formatado após o processamento.
Parâmetros:
$formatted(corda) — A string de saída formatada.$tag(corda) — A chave Smart Tag.$form_data(variedade) — A matriz de dados do formulário.$fields(variedade) — Os campos de entrada.$entry_id(int) — O ID de entrada.
// Wrap the source value in a bold tag in HTML notifications.
add_filter( 'pb_wpforms_referral_tracking_formatted_value', function( $formatted, $tag, $form_data, $fields, $entry_id ) {
if ( $tag === 'pb_ref_source' ) {
return '<strong>' . esc_html( $formatted ) . '</strong>';
}
return $formatted;
}, 10, 5 );pb_wpforms_referral_tracking_default_value
Substitui o valor de fallback usado quando um campo de rastreamento está vazio no momento do envio. O padrão é "Desconhecido".
Parâmetros:
$default(corda) — O valor padrão atual (“Desconhecido”).$key(corda) — Chave de contexto:source,referrer, oufront_end.
// Use "Direct" instead of "Unknown" for the source field fallback.
add_filter( 'pb_wpforms_referral_tracking_default_value', function( $default, $key ) {
if ( $key === 'source' ) {
return 'Direct';
}
return $default;
}, 10, 2 );pb_wpforms_referral_tracking_js_config
Substitua todo o objeto de configuração JavaScript do front-end antes que ele seja passado para o script de rastreamento. Isso lhe dá controle total sobre as configurações de cookies, padrões de detecção de origem, fontes conhecidas, mídias pagas e muito mais.
Parâmetros:
$config(variedade) — O array de configuração JS completo.
// Extend cookie lifetime to 30 days and add a custom paid medium.
add_filter( 'pb_wpforms_referral_tracking_js_config', function( $config ) {
$config['cookieExpiry'] = 30;
// Add "social" as a paid medium indicator.
$config['paidMediums'][] = 'social';
// Add a custom source pattern for an internal platform.
$config['sourcePatterns']['custom_platforms'][] = [
'pattern' => 'myplatform\.com',
'name' => 'My Platform',
];
return $config;
} );pb_wpforms_referral_tracking_custom_sources
Injetar programaticamente regras de origem personalizadas que são executadas em conjunto com as regras configuradas na interface de administração. As regras deste filtro são mescladas com as regras de interface salvas e classificadas por prioridade antes de serem enviadas para o front-end.
Parâmetros:
$sources(variedade) — Matriz vazia. Retorna uma matriz de matrizes de regras para adicionar.
Cada regra deve ter: label, matchField (referrer, utm_source, utm_medium, utm_campaign, utm_term, utm_content), matchType (contains ou equals), matchValue, e opcionalmente priority (padrão 10, maiores executam primeiro).
// Add partner and affiliate sources without touching the admin UI.
add_filter( 'pb_wpforms_referral_tracking_custom_sources', function( $sources ) {
$sources[] = [
'label' => 'Partner: Acme Corp',
'matchField' => 'referrer',
'matchType' => 'contains',
'matchValue' => 'acme.com',
'priority' => 20,
];
$sources[] = [
'label' => 'Campaign: Spring Sale',
'matchField' => 'utm_campaign',
'matchType' => 'contains',
'matchValue' => 'spring-sale',
'priority' => 10,
];
return $sources;
} );pb_wpforms_referral_tracking_enqueue_assets
Controla se os recursos de front-end do plugin (biblioteca de cookies e script de rastreamento) são enfileirados. Retorne falso para desativar completamente o carregamento em uma página ou condição.
Parâmetros:
$enqueue(bool) — Indica se os recursos devem ser enfileirados. Padrãotrue.
// Disable tracking assets on the homepage only.
add_filter( 'pb_wpforms_referral_tracking_enqueue_assets', function( $enqueue ) {
if ( is_front_page() ) {
return false;
}
return $enqueue;
} );