Como lidar com a submissão de formulários personalizados?

Eu criei um tema, nesse tema, existe uma forma personalizada no rodapé. O front end é bom, mas não sei como lidar com o back-end do envio de formulários no WordPress.

Quero dizer, eu poderia criar um handle_form.php no site simples, ou lidar com o formulário na mesma página, mas o que seria o melhor no WordPress, não posso alterar o layout do formulário, então eu acho que os plugins não serão Socorro.

Devo lidar com o formulário no footer.php, ou qualquer outra solução melhor

obrigado

Solutions Collecting From Web of "Como lidar com a submissão de formulários personalizados?"

Embora você possa criar seu próprio código para lidar com as inscrições de formulários, assumindo que seu formulário é um formulário de tipo de contato (não é claro de sua pergunta), minha solução seria usar um formulário de contato como o Formulário de Contato 7. Ele criará formulários que podem enviar os dados para você e é simples de usar. Ele tem “ganchos” que você pode usar se, por exemplo, você quisesse armazenar os dados do formulário em uma tabela de database. Há outras questões aqui (com respostas) sobre como fazer isso.

Você pode criar uma rota REST e processar seu formulário através dessa. O primeiro passo é registrar uma rota. Para fazer isso, adicione este pedaço de código no arquivo functions.php do seu tema:

 add_action( 'rest_api_init', function () { register_rest_route( 'beginner', '/submit_form/', array( 'methods' => 'POST', 'callback' => 'process_my_form' ) ); }); 

Agora você altera o URL de action do seu formulário para isso:

 www.example.com/wp-json/beginner/submit_form 

Certifique-se de configurar o método para POST também.

Agora, você pode criar uma function de retorno de chamada e processar seu formulário. Aqui está uma amostra:

 function process_my_form( \WP_REST_Request $request ){ // Now you have access to your form's values, for // example, you can use $username = $request['user']; } 

Ai está.