Estoy intentando usar wp_redirect()
para redirigir al usuario después de enviar correctamente un formulario de registro en la página.
No funciona y muestra el siguiente error:
Advertencia: no se puede modificar la información del encabezado; los encabezados ya han sido enviados por (la salida comenzó en /Aplicaciones/MAMP/htdocs/theme/wp-content/themes/test/header.php:10) en /Applications/MAMP/htdocs/theme/wp-includes/pluggable.php en línea 1178
Entiendo que ya se ha producido una salida antes, por eso no funciona, pero no tengo idea de cómo hacer que esto funcione.
El formulario de registro se procesa mediante una función y es enviado por otra función, dentro de mis funciones.php.
if ( isset( $_POST['subscribe'] ) ) {
// Submits the form and should then redirect
wp_redirect("/thank-you/");
exit;
}
Luego, estas dos funciones se usan donde quiero mostrar el formulario de registro.
Me temo que eso no es lo mejor que se puede hacer. Debería estar creando una acción que haga eso, pero no tengo idea de cómo implementar eso. La mayoría de los tutoriales que encontré muestran los resultados directamente en la misma página y no requieren un redireccionamiento adicional. Quizás es por eso que están trabajando con funciones dentro de functions.php