Formulário de contato no Cloudflare Pages

Formgong team ·

Um formulário de contato no Cloudflare Pages pode enviar pelo navegador. Cole o HTML abaixo e aponte action para o Formgong. Não é preciso uma Pages Function nem uma API de e-mail. O Telegram é imediato. No plano grátis, o e-mail é um resumo às 08:00 da manhã seguinte.

Cloudflare Pages
<form action="https://formgong.com/submit" method="POST">
  <input type="hidden" name="access_key" value="fk_your_access_key">
  <input type="hidden" name="_lang" value="pt">
  <label>Nome <input type="text" name="name" autocomplete="name" placeholder="O seu nome" required></label>
  <label>E-mail <input type="email" name="email" autocomplete="email" placeholder="voce@exemplo.com" required></label>
  <label>Mensagem <textarea name="message" placeholder="Como podemos ajudar?" required></textarea></label>
  <div aria-hidden="true" style="position:absolute;inset-inline-start:0;top:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)">
  <label>Deixe este campo vazio<input type="text" name="botcheck" tabindex="-1" autocomplete="off"></label>
</div>
  
  <button type="submit">Enviar</button>
</form>

Como funcionam os formulários em Cloudflare Pages

O Cloudflare Pages serve arquivos estáticos. Ele não procura um formulário no seu HTML. Um POST para o endereço da página não tem destino, então a mensagem se perde.

Um arquivo functions/api/contact.js pode ler esse POST. Enviar o e-mail ainda pede uma API de e-mail, um segredo e DNS num domínio seu. O formulário abaixo pula esse trabalho.

Configuração em Cloudflare Pages

  1. Crie um formulário no Formgong e copie a chave. Ela começa com fk_.
  2. Cole o HTML na pasta que o Pages publica, como public/index.html ou contact.html. Aponte action para https://formgong.com/submit.
  3. Troque fk_your_access_key. Deixe botcheck vazio. Só adicione o Turnstile depois de ligá-lo em Protection.
  4. Publique pelo Git ou rode wrangler pages deploy. Envie um teste do endereço pages.dev no ar.
  5. No plano grátis, o e-mail é um resumo às 08:00 da manhã seguinte. O Telegram é imediato. Pro e Business enviam um e-mail por envio.

Formgong ou uma Pages Function?

Escreva uma Pages Function quando o envio precisar mudar o seu banco ou chamar uma API privada.

Use o Formgong para um formulário de contato. Você pula o segredo do e-mail, os DNS e uma função para manter. O site continua uma pasta de arquivos estáticos.

Perguntas e respostas

O Cloudflare Pages inclui um formulário de contato?

Não. O tutorial oficial monta uma Pages Function que devolve os campos em JSON. Ela não envia e-mail e não guarda uma caixa. Ainda é preciso um backend de formulários, ou a sua função mais uma API de e-mail.

Preciso de uma Pages Function ou de um Worker?

Não para este formulário. O navegador envia ao Formgong. Use uma função quando o envio precisar rodar o seu código. O antigo caminho grátis da MailChannels para Workers parou em 30 de junho de 2024.

O visitante pode ficar na página?

Sim. Chame fetch em https://formgong.com/submit com Accept: application/json. Conte como enviado só quando response.ok e result.success forem ambos verdadeiros. O formulário HTML funciona sem JavaScript.

Como adiciono o Turnstile na mesma conta?

Crie um widget Turnstile no painel da Cloudflare e cole a chave do site no formulário. Ponha o segredo no Formgong, em Protection, não no projeto Pages. O widget envia cf-turnstile-response.

O que o plano grátis inclui?

O Free guarda 300 envios por mês. O Telegram é imediato. O e-mail é um resumo às 08:00 da manhã seguinte, no seu fuso. Pro e Business enviam um e-mail por envio.

Começar grátis