Template seguro de formulário HTML processado via PHP com validação de nonce.
// Exibir formulário
function exibir_formulario(): string {
ob_start();
?>
<form method="post">
<?php wp_nonce_field('meu_formulario_action', 'meu_nonce'); ?>
<input type="text" name="nome" required placeholder="Seu nome">
<button type="submit" name="enviar_formulario">Enviar</button>
</form>
<?php
return ob_get_clean();
}
// Processar envio
add_action('init', function (): void {
if (!isset($_POST['enviar_formulario'])) return;
if (!check_admin_referer('meu_formulario_action', 'meu_nonce')) {
wp_die('Ação não autorizada.');
}
$nome = sanitize_text_field($_POST['nome'] ?? '');
// Processar dados...
});