
Ilustração por https://icons8.com
post
Enviar formulário via API contact form 7 no WordPress
Publicado em: 30/03/2020
É 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.

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

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
Link de 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 para mim, e sugira alguma publicação de algum tema que tenha dificuldades de resolver.