Como corrigir o WPForms Post Submissions que não cria posts no WordPress
O que é WPForms Post Submissions não cria post?
O WPForms Post Submissions e um addon que permite criar posts no WordPress a partir do envio de um formulário, sem que o visitante precise acessar o painel ou ter conta de usuário. Segundo a página oficial do recurso, ele e usado para enviar artigos de blog, listagens de diretório, anúncios de imoveis, depoimentos e galerias. Cada envio aprovado vira um post (ou tipo de post personalizado) no site.
Quando o Post Submissions não cria post, na prática significa que o vinculo entre formulário e WordPress não esta completo. Pela documentação do WPForms, o addon precisa estar instalado e ativo, o formulário precisa ter a aba Post Submissions configurada com o mapeamento de campos, e o status de publicação definido controla se o envio aparece como rascunho, pendente de revisao ou publicado. O recurso e da licenca Pro ou superior do WPForms, entao a versão Lite gratuita não exibe a aba de configuração.
Como identificar
- O formulário e enviado com sucesso e a mensagem de confirmacao aparece, mas nenhum post novo surge em Posts -> Todos os posts.
- Em WPForms -> Addons o card ‘Post Submissions Addon’ aparece como ‘Inactive’ ou nem aparece na lista de addons disponiveis.
- Nas configurações do formulário não existe a aba ‘Post Submissions’, so as abas padrão de notificações e confirmacoes.
- O post e criado, porém fica como ‘Rascunho’ ou ‘Pendente de revisao’ e não no estado publicado que se esperava.
- A entrada do formulário aparece em WPForms -> Entradas, mas o post correspondente nunca e gerado a partir dela.
Como prevenir
- Confirme a licenca Pro do WPForms ativa antes de prometer envio de posts por formulário, já que o addon Post Submissions não existe na versão Lite gratuita.
- Documente o mapeamento de campos do formulário para os campos do post, para que uma edição futura no formulário não quebre o vinculo de Post Title e Post Content.
- Padronize o Post Status como Pending Review em formulários abertos ao público, mantendo o controle editorial sobre o que vai ao ar.
- Após cada mudanca no formulário ou no tipo de post de destino, faca um envio de teste para garantir que o post continua sendo criado no lugar certo.
Causa
- O addon Post Submissions não esta instalado ou esta inativo em WPForms -> Addons; sem o addon ativo a aba de configuração de post nem aparece nas opções do formulário.
- A aba Post Submissions do formulário esta com a opção 'Enable Post Submissions' desligada, entao o WPForms grava a entrada mas não dispara a criação do post.
- O 'Post Status' configurado na aba Post Submissions esta como Draft (rascunho) ou Pending Review (pendente de revisao); pela doc oficial, o envio não e publicado automaticamente a menos que esse status seja definido como Published.
- Os campos do formulário não foram conectados aos campos do post (Post Title, Post Content) no mapeamento da aba Post Submissions, deixando o WordPress sem o conteúdo mínimo para montar o post.
- O site usa a versão WPForms Lite gratuita, que não inclui o addon Post Submissions; o recurso exige uma licenca Pro ou superior para liberar a aba de configuração.
- O 'Post Type' selecionado aponta para um tipo de post personalizado que foi desativado ou removido por outro plugin, fazendo o WPForms tentar criar um post em um destino que não existe mais.
Como resolver
- Instale e ative o addon Post Submissions: O recurso depende do addon e da licenca Pro do WPForms. Va até a lista de addons, encontre o Post Submissions Addon e clique para instalar e ativar. Sem ele ativo, a aba de configuração de post não existe no formulário.
Painel WP -> WPForms -> Addons Localize o 'Post Submissions Addon' e clique em Install Addon Confirme que o status muda para Active - Ative o Post Submissions dentro do formulário: Abra o formulário no construtor, va na aba Post Submissions e ligue a opção de envio de post. Esse interruptor e o que faz o WPForms transformar a entrada em post em vez de apenas registrar a entrada.
Painel WP -> WPForms -> Todos os formulários -> abra o formulário No construtor, clique em Settings (Configurações) -> Post Submissions Marque a opção 'Enable Post Submissions' - Conecte os campos do formulário aos campos do post: Na mesma aba, mapeie cada campo do post para um campo do formulário. No mínimo, Post Title e Post Content precisam apontar para campos existentes, senao o WordPress não tem o conteúdo básico para criar o post.
Em Post Submissions, defina 'Post Title' apontando para o campo de título do formulário Defina 'Post Content' apontando para o campo de conteúdo (use o campo Content para texto formatado) Opcional: mapeie 'Featured Image', 'Post Excerpt' e a taxonomia desejada - Defina o tipo e o status de publicação corretos: Escolha o Post Type de destino e o Post Status. Pela doc oficial, o envio não e publicado sozinho a menos que você queira: deixe em Published para publicar direto, ou mantenha Pending Review se a moderacao for intencional.
Em Post Submissions, ajuste 'Post Type' para o destino certo (ex.: Posts) Ajuste 'Post Status' para Published (publicar direto) ou Pending Review (moderar antes) Defina o 'Post Author' padrão para os envios - Salve, faca um envio de teste e confira o destino: Salve o formulário, envie um teste e verifique se o post aparece no tipo de post escolhido. Se ficou como rascunho ou pendente, o status do passo 4 estava em Draft ou Pending Review, não em Published.
Clique em Save no construtor do formulário Abra a página com o formulário e faca um envio de teste Painel WP -> Posts -> Todos os posts -> filtre por Rascunhos e Pendentes para localizar o envio
<?php
// Loga e ajusta o post criado pelo WPForms Post Submissions.
// Util para diagnosticar por que o post nao aparece como esperado.
add_action( 'wpforms_post_submissions_process_after', 'full_debug_post_submissions', 10, 4 );
function full_debug_post_submissions( $post_id, $fields, $form_data, $entry_id ) {
if ( ! $post_id || is_wp_error( $post_id ) ) {
error_log( 'WPForms Post Submissions: post NAO criado para a entrada ' . $entry_id );
return;
}
$post = get_post( $post_id );
error_log( sprintf(
'WPForms Post Submissions: post %d criado com status "%s" e tipo "%s".',
$post_id,
$post->post_status,
$post->post_type
) );
}














