abstract list is empty

abstract list is empty

Ilustração por https://icons8.com

post

Enviar formulário via API contact form 7 no WordPress

Publicado em: 30/03/2020 / Atualizado em: 16/06/2022

Categorias: BlogContact Form 7HTTPWordpress

É possível enviar um formulário do Contact Form 7 do WordPress sem o preenchimento pelo site, apenas usando a REST API do próprio plugin.

Para isso você deve fazer uma solicitação POST para a seguinte URL do site que usa o plugin:

https://{DOMINIO}/wp-json/contact-form-7/v1/contact-forms/{ID_FORMULARIO}/feedback

Onde {DOMINIO} é o endereço principal do seu site WordPress, e {ID_FORMULARIO} é o ID do formulario do contact form 7.

O ID do formulário pode ser obtido na listagem ou na própria pagina do mesmo, no shortcode, que tem a seguinte aparência.

Aparência do shortcode dos formulários do contact form 7 no wordpress
Aparência do shortcode dos formulários do contact form 7 no wordpress

No print acima, significa que o id destes formulários CF7 são 14 e 65 respectivamente, neste exemplo.

Para realizar o envio dos dados usando a API do plugin, segue exemplos abaixo:

Via Postman

Exemplo de preenchimento via aplicativo Postman

Via PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://{DOMINIO}/wp-json/contact-form-7/v1/contact-forms/{ID_FORMULARIO}/feedback',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => 'your-name=Bruno&your-email=bruno%40email.com&telefone=11%2090000-9999&preferencia-contato=Manda%20no%20Zap&your-subject=Teste&mensagem=Ola%2C%20mensagem%20teste',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/x-www-form-urlencoded'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Substitua também os nomes dos campos dos exemplos acima, para o nome dos campos do seu formulário.

Lembrando que, caso use o reCAPTCHA em seu formulario, pode ser que não chegue a mensagem para sua caixa de e-mail, pois pode ficar parado no spam.

Use o plugin Flamingo, para registrar todos os preenchimentos de formulários CF7 do seu site, assim poderá verificar se algum e-mail parou no spam do site antes de ser enviado para seu e-mail.

Você pode ver o artigo original que inspirou este post clicando em: https://medium.com/@mahesh_joshi/wordpress-contact-form-7-rest-api-endpoints-bf45907b571c

Publicações recomendadas:


Inscreva-se em Nossa News:

Seja notificando sempre que tiver conteúdo novo disponível no meu canal do Youtube ou artigo no meu Blog.

Bruno Devs News


Link Curto para Compartilhamento

Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link curto abaixo. Basta clicar em cima do link para copiar.

bruno.art.br/pb/387

ID de Referência: 387

Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato


Comentários