WP Manifestindependent plugin directory
manifest / social / creatyze-floating-whatsapp

Creatyze — Botão flutuante de WhatsApp

Plugin WordPress: botão flutuante de WhatsApp com sincronização JetEngine, mensagem pré-preenchida e workarounds pra bugs reais do WA Web.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/nicchonsanchez/creatyze-floating-whatsapp/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Plugin WordPress que adiciona um botão flutuante de WhatsApp no canto inferior direito, com sincronização automática com JetEngine, mensagem pré-preenchida e configuração visual completa.

Construído pela Creatyze inicialmente pra um cliente real (psicanalista que precisava do botão lendo o número direto do JetEngine que ela já usava), e amadurecido em 9 versões com workarounds pra bugs reais do WhatsApp Web.

Por que existe

Plugins de WhatsApp flutuante em WordPress são commodity — tem aos montes. Esse foi feito pra resolver problemas que outros não resolvem:

  1. Lê do JetEngine automaticamente — quando o cliente atualiza o número na Options Page do JetEngine, o botão atualiza sozinho, sem você precisar mexer no plugin.

  2. Workarounds pra bugs reais do WhatsApp — o WhatsApp Web/app tem comportamento inconsistente com quebras de linha em mensagens pré-preenchidas. O plugin normaliza line endings, escapa caracteres específicos como o encodeURIComponent do JS, e insere espaços antes de \n pra evitar palavras coladas.

  3. Settings page com identidade própria — color picker, dropdown listando todos os campos das Options Pages do JetEngine com prévia do valor, painel de diagnóstico colapsável que mostra exatamente onde o JetEngine guardou cada chave (útil quando a leitura falha).

  4. Robusto na detecção — tenta 5 prefixos diferentes de option key, API moderna do JetEngine, função pública livre, e como último recurso varre wp_options atrás do slug. Se um update do JetEngine quebrar a chave, o plugin se vira.

Funcionalidades

  • ✅ Sincronização automática com JetEngine Options Page
  • ✅ Tooltip configurável (aparece no hover)
  • ✅ Mensagem pré-preenchida na conversa do WhatsApp (qualifica lead)
  • ✅ Cor de fundo personalizável via color picker
  • ✅ Animação de pulse opcional (ripple effect na cor do botão)
  • ✅ Sobrescrever número manualmente se preferir
  • ✅ Esconder em páginas específicas (multi-select)
  • ✅ Esconder em mobile ou desktop separadamente
  • ✅ Normalizador automático de número (aceita (62) 99905-5318, 5562999055318, URL wa.me/..., etc — converte tudo pra wa.me válido)
  • ✅ Respeita prefers-reduced-motion
  • ✅ Filtros creatyze_fwa_link e creatyze_fwa_should_render pra extensibilidade

Instalação

Via Painel WordPress

  1. Painel WP → Plugins → Adicionar novo → Enviar plugin
  2. Selecione o ZIP da release → Instalar agora
  3. Ativar plugin
  4. Vá em Configurações → Botão WhatsApp pra ajustar texto, cor e comportamento

Via FTP

  1. Baixe e descompacte
  2. Faça upload da pasta creatyze-floating-whatsapp/ pra wp-content/plugins/
  3. Ative no painel WordPress

Uso

Depois de ativar, o botão aparece automaticamente em todas as páginas. Pra customizar:

Configurações → Botão WhatsApp

Fonte do número (3 modos)

  • Auto (default): lê de info-de-contato/whatsapp_link no JetEngine
  • JetEngine field: dropdown lista todas as Options Pages e campos com prévia
  • Personalizado: cola qualquer formato (vai ser normalizado automaticamente)

Mensagem pré-preenchida

Suporta múltiplas linhas. Atenção: o WhatsApp ignora \r\n em alguns casos — o plugin normaliza e insere espaço antes da quebra pra evitar palavras coladas.

Hooks pra desenvolvedores

// Modifica o link final antes de renderizar
add_filter( 'creatyze_fwa_link', function( $link ) {
    return $link;
});

// Decide se renderiza ou não em uma página
add_filter( 'creatyze_fwa_should_render', function( $should ) {
    if ( is_singular( 'curso' ) ) return false;
    return $should;
});

Stack e arquitetura

  • PHP 7.4+ (compatível até 8.x)
  • WordPress 5.8+ (testado até 6.6)
  • Single-file plugin (~1.300 linhas)
  • Sem dependências externas
  • Settings via WordPress Settings API
  • Color picker nativo do WP (wp-color-picker)
  • Hooks para extensão por terceiros

Histórico (changelog resumido)

  • 1.9.3 — Encoder mimica encodeURIComponent JS pra compatibilidade
  • 1.9.0 — Workaround pra bug do WA que ignora %0A colando palavras
  • 1.7.0 — Normalização de line endings (\r\n → \n)
  • 1.6.0 — Animação de pulso refeita como ripple effect
  • 1.5.0 — Detecção JetEngine muito mais robusta (5 prefixos + fallbacks)
  • 1.4.0 — Settings page redesenhada com identidade Creatyze
  • 1.3.0 — Normalizador automático de número (aceita qualquer formato)
  • 1.2.0 — Dropdown lista campos do JetEngine com prévia
  • 1.1.0 — Settings page completa, tooltip, cor, mensagem
  • 1.0.0 — Versão inicial

Ver changelog completo

Licença

GPL-2.0 ou superior. Veja LICENSE.

Autor

Creatyze Studios — desenvolvido por Nicchon Sanchez.

Construído originalmente pra Caroline Quixabeira.