WP Manifestindependent plugin directory
manifest / forms / wp-form-wizard

WP Form Wizard

Plugin Wordpress de criação de formulários dinâmicos

★ 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/nelclassico/wp-form-wizard/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.

INSTALAÇÃO

  1. Suba a pasta "wp-form-wizard" em /wp-content/plugins/
  2. Ative em Plugins.
  3. No menu "Formulários", crie um novo formulário.
  4. Use o construtor visual para montar Etapas > Seções > Campos.
  5. Publique e use o shortcode [wpfw_form id="X"] em qualquer página/post.

COMO FUNCIONA A RAMIFICAÇÃO (o "muda de acordo com o assunto")

  • Cada campo do tipo "Cards de escolha" (card_choice), rádio ou lista suspensa pode ter, em cada opção, um campo "vai para: [etapa]".
  • Quando o usuário escolhe essa opção, o formulário busca via AJAX (sem recarregar a página) o HTML da etapa configurada e substitui o conteúdo na tela, atualizando "Etapa X de Y".
  • Se a opção não tiver etapa definida, o formulário usa o "next_step" padrão configurado na etapa.
  • Se não houver next_step nenhum, aquela etapa é tratada como final (o botão vira "Enviar").

CAMPOS CONDICIONAIS (mostrar/esconder campo na MESMA etapa)

  • Diferente da ramificação (que pula para outra etapa), um campo condicional aparece ou some dentro da própria etapa, na hora, sem ida ao servidor. Exemplo: um rádio "Sabe a data? Sim/Não" que, ao marcar "Sim", revela um campo de data logo abaixo.
  • No construtor, marque "Só mostrar este campo condicionalmente" no campo que deve ficar escondido, escolha qual campo controla ele (precisa estar na mesma etapa) e qual valor ativa a exibição.
  • Se o campo escondido tiver algo preenchido e o usuário mudar de ideia, o valor é limpo automaticamente ao esconder, pra não enviar resposta de algo que não ficou visível.

TIPOS DE CAMPO DISPONÍVEIS

  • Texto curto / Texto longo / Data
  • Lista suspensa / Rádio / Checkbox
  • Upload de arquivo(s): permite selecionar vários arquivos, sobe cada um via AJAX assim que é escolhido (sem esperar avançar a etapa), valida extensão e o tamanho TOTAL do conjunto no navegador E no servidor (o navegador pode ser burlado, o PHP não). Por padrão aceita pdf, jpeg, jpg, png, tif, mp4, wmv, avi, mp3, wma, msg, ogg com limite de 15MB no total — dá pra mudar por campo no construtor. Os arquivos ficam na Biblioteca de Mídia, vinculados à resposta quando o formulário é enviado. Alguns desses formatos (.msg, .wma) não são liberados pelo WordPress por padrão; o plugin libera esses tipos automaticamente só durante o upload. IMPORTANTE: o servidor também precisa permitir esse tamanho de upload (php.ini: upload_max_filesize e post_max_size ≥ 15M), senão o PHP recusa antes mesmo do plugin validar.
  • Cards de escolha (o estilo das telas de referência: ícone Font Awesome + título + descrição, clicável, avança sozinho ao clicar). O ícone é o nome da classe do Font Awesome, ex: "fa-solid fa-thumbs-up" (o construtor sugere alguns ícones comuns automaticamente). Font Awesome é carregado via CDN, não precisa instalar nada.

ONDE FICAM AS RESPOSTAS

  • Menu Formulários > Respostas: cada envio vira um post com todas as respostas coletadas ao longo do fluxo, mostrando o RÓTULO de cada pergunta (com o ID do campo como referência menor embaixo).
  • Hook "wpfw_after_submission" disponível para quem quiser mandar e-mail, integrar com outro sistema, etc.

NOTIFICAÇÃO POR E-MAIL

  • No painel lateral de cada formulário (Formulários > editar um), tem a caixa "Notificação por e-mail": informe um ou mais e-mails (separados por vírgula) e cada nova resposta enviada dispara um e-mail automático com todas as perguntas/respostas (usando os rótulos configurados) e um link direto pra ver a resposta no admin. Deixe em branco pra não notificar ninguém.
  • Usa a função wp_mail() do WordPress — se o servidor não tiver SMTP configurado, o e-mail pode cair no spam ou não sair; se isso acontecer, vale instalar um plugin de SMTP (WP Mail SMTP, por exemplo) e configurar o envio pelo provedor de e-mail da MPCE.

PRÓXIMOS PASSOS SUGERIDOS (para próximas rodadas)

  • Exportação CSV das respostas
  • Reordenar campos/seções por arrastar
  • Validação de CEP/endereço via API (como na imagem 3)
  • Limpeza automática (cron) de arquivos enviados mas nunca vinculados a uma resposta (se o usuário sobe um arquivo e abandona o formulário sem enviar, o arquivo fica na Biblioteca de Mídia)