cabeceras han sido enviadas

Cómo solucionar el error de las cabeceras han sido enviadas en WordPress

El error de las cabeceras han sido enviadas es uno de los errores más comunes, no sólo en WordPress. Normalmente te aparece en pantalla un mensaje tipo:

Warning: Cannot modify header information – headers already sent by (output started at…)

WordPress usa funciones de sesión de PHP. Si se muestra algo antes de estas funciones de sesión, que incluso puede ser un espacio en blanco, las funciones de sesión no funcionarán correctamente porque su navegador ya recibió todos los encabezados y comenzará a mostrar la salida.

Este error puede darse por varias razones, aunque lo más habitual es que se trate de que hay espacios, líneas o caracteres antes de la etiqueta <?php ó después de ?> en uno de tus archivos.

¿Cómo identificar las posibles causas del error de las cabeceras han sido enviadas?

Sigue los siguientes pasos:

  • Descarga el archivo mencionado en el error y ábrelo con tu editor de código
  • Elimina espacios y líneas antes de <?php
  • Elimina espacios y líneas después de ?>
  • Comprueba que las etiquetas de PHP están bien escritas
  • Antes de guardar, o utiliza la opción Guardar como, y asegúrate de que la codificación del archivo no sea UTF-8 BOM sino UTF-8 simple o cualquiera sin el sufijo BOM.
  • Este error también aparece cuando utilizas wp_redirect() para hacer una redirección después de enviar las cabeceras (antes del hook send_headers)

Para evitar estos errores, es recomendable no abrir y cerrar etiquetas PHP innecesarias, ejemplo:

// Mal hecho
<?php
some code;
?>

<?php
some other codes;
?>
// Bien hecho
<?php
some code;

some other codes;
?>

Te dejo el enlace al códex de WordPress donde podrás encontrar más información acerca de este error. Más información

¿Te ha resultado útil esta información? 🍺

Si este post te ha resuelto un problema, invítame a un café o a una cerveza. Con este pequeño gesto me animas a seguir escribiendo.

Comentarios

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *:

  • El fin del tratamiento es únicamente la moderación de comentarios para evitar spam
  • La legitimación es tu consentimiento al comentar
  • No se comunicará ningún dato a terceros salvo por obligación legal
  • Tienes derecho al acceso, rectificación y eliminación de los comentarios