Como Resolver Problemas de Integração RD Station com Pop-ups do Elementor WordPress

A integração RD Station com WordPress é fundamental para capturar leads qualificados, mas muitos desenvolvedores enfrentam um problema frustrante: formulários do Elementor em pop-ups que não enviam dados para a RD Station, mesmo quando o envio do formulário funciona perfeitamente.
Se você está enfrentando essa situação onde o formulário Elementor mostra como enviado, mas o lead não aparece na RD Station, este artigo vai resolver definitivamente seu problema.
O Problema: Por que RD Station Não Funciona em Pop-ups Elementor?
Sintomas Comuns:
- ✅ Formulário é enviado com sucesso (aparece mensagem de confirmação)
- ❌ Lead não aparece no painel da RD Station
- ✅ Na página inicial funciona normalmente
- ❌ Em páginas internas ou pop-ups não funciona
A Causa Raiz
O problema acontece porque o script de integração da RD Station não consegue “enxergar” formulários que são carregados dinamicamente em pop-ups do Elementor. Quando o pop-up é aberto, o contexto do DOM muda, mas a RD Station já executou seu script de inicialização.
Como Funcionam os Scripts RD Station no WordPress
A RD Station usa dois componentes principais:
- Código de tracking global (instalado no
<head>) - Script de integração de formulários que mapeia campos automaticamente
html
<!-- Código global da RD Station -->
<script type="text/javascript" async src="https://d335luupugsy2v.cloudfront.net/js/rdstation-forms/stable/rdstation-forms.min.js"></script>
O Conflito com Pop-ups
Quando você abre um pop-up do Elementor Pro, o formulário é inserido dinamicamente no DOM, mas o script da RD Station já foi executado e não detecta os novos elementos.
Solução Definitiva: Código JavaScript para Recarregar RD Station
Passo 1: Identifique seu Token RD Station
Primeiro, localize seu token de integração RD Station no código do seu site. Procure por algo como:
javascript
RdstationFormsIntegration.Integration.integrateAll("SEU_TOKEN_AQUI");
Passo 2: Implemente o Código de Correção
Adicione este código no Appearance → Theme Editor → functions.php ou em um plugin personalizado:
php
add_action('wp_footer', 'fix_rd_station_elementor_popup');
function fix_rd_station_elementor_popup() {
?>
<script>
function onPopupOpen() {
console.log("Popup aberto, recarregando RD Station Forms...");
// Valida se o RD Station Forms Integration está disponível
if (window.RdstationFormsIntegration) {
// Substitua pelo seu token da RD Station
RdstationFormsIntegration.Integration.integrateAll("SEU_TOKEN_RD_STATION");
console.log("RD Station forms recarregado com sucesso!");
} else {
console.warn("RdstationFormsIntegration não encontrado.");
}
}
// Executa quando qualquer popup do Elementor é aberto
jQuery(document).ready(function($) {
$(document).on('elementor/popup/show', function(event, id, instance) {
setTimeout(onPopupOpen, 100);
});
});
</script>
<?php
}
Passo 3: Configuração Alternativa (Método Direto)
Se preferir, você pode adicionar o código diretamente no Elementor:
- Edite a página com o pop-up
- Adicione um widget HTML
- Cole este código:
html
<script>
function onPopupOpen() {
if (window.RdstationFormsIntegration) {
RdstationFormsIntegration.Integration.integrateAll("SEU_TOKEN_AQUI");
}
}
onPopupOpen();
</script>
Testando a Solução
Como Verificar se Funcionou:
- Abra o Console do Navegador (F12 → Console)
- Abra o pop-up com o formulário
- Procure pelas mensagens:
- “Popup aberto, recarregando RD Station Forms…”
- “RD Station forms recarregado com sucesso!”
Teste de Captura:
- Preencha o formulário no pop-up
- Envie os dados
- Verifique na RD Station se o lead foi capturado
Problemas Relacionados e Soluções Adicionais
Redirecionamento Interrompendo Scripts
Se você tem redirecionamento automático (ex: para WhatsApp), isso pode interromper o processamento da RD Station:
Solução: Adicione delay no redirecionamento:
javascript
// Em vez de redirect imediato
setTimeout(function() {
window.open('https://wa.me/seunumero', '_blank');
}, 2000); // 2 segundos de delay
Conflitos com Plugins de Cache
Plugins de cache podem interferir com scripts JavaScript:
- WP Rocket: Exclua scripts da RD Station da minificação
- W3 Total Cache: Adicione RD Station na lista de exclusões
- LiteSpeed Cache: Configure para não otimizar JavaScript da RD Station
Verificação de Conflitos
Para identificar conflitos:
javascript
// Adicione no console para debug
console.log(typeof RdstationFormsIntegration);
console.log(window.RdstationFormsIntegration);
Alternativa: Webhook para Máxima Confiabilidade
Para casos críticos, configure um webhook no Elementor:
- Actions After Submit → Webhook
- URL:
https://seusite.com/webhook-rd.php - Crie o arquivo webhook:
php
<?php
// webhook-rd.php
$data = json_decode(file_get_contents('php://input'), true);
// Enviar para RD Station via API
$rd_data = [
'email' => $data['email'],
'name' => $data['name'],
'job_title' => $data['job_title']
];
// Chamada API RD Station
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.rd.services/platform/conversions",
CURLOPT_POSTFIELDS => json_encode($rd_data),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer SEU_ACCESS_TOKEN",
"Content-Type: application/json"
]
]);
curl_exec($curl);
?>
Melhores Práticas para RD Station + Elementor
1. Estrutura de Campos Consistente
- Use sempre os mesmos nomes de campos
- Mantenha mapeamento padronizado
- Configure campos obrigatórios corretamente
2. Monitoramento e Debug
javascript
// Código para monitorar integrações
window.rdDebug = function() {
console.log('RD Station Status:', window.RdstationFormsIntegration);
console.log('Forms encontrados:', document.querySelectorAll('form').length);
};
3. Testes Regulares
- Teste mensalmente todos os formulários
- Monitore relatórios da RD Station
- Configure alertas para quedas de conversão
Conclusão
A integração RD Station com pop-ups do Elementor requer atenção especial ao contexto de carregamento dos scripts. Com a solução apresentada, você garante que todos os leads sejam capturados corretamente, independentemente de estarem em pop-ups ou páginas tradicionais.
Checklist Final:
- ✅ Token RD Station configurado corretamente
- ✅ Código JavaScript implementado
- ✅ Testes realizados no console
- ✅ Verificação de captura na RD Station
- ✅ Configuração de delay em redirecionamentos
Dica Pro: Sempre mantenha um ambiente de testes para validar mudanças antes de aplicar em produção.
Está enfrentando problemas com integrações WordPress? A L.T WEB oferece suporte especializado em automação de marketing digital e desenvolvimento WordPress. Entre em contato para consultoria personalizada.
1 Comentário
Ótima solução. Obrigado!