Solucionar “Warning: cannot modify header information – headers already sent by”
Si te has encontrado con el error de WordPress “Warning: cannot modify header information – headers already sent by“, eso significa que hay algo mal en el código del encabezado de la página de tu sitio web. No te preocupes, estamos aquí para ayudarte.
En este artículo, explicaremos por qué se produce este error y cómo solucionarlo en un abrir y cerrar de ojos.
Tabla de Contenidos
Por qué aparece el error ‘Cannot modify header information – headers already sent by’
En WordPress, este error se produce cuando hay un código defectuoso en el header de tu página. Por ejemplo, el mensaje se verá parecido a esto:
Warning: Cannot modify header information – headers already sent by (output started at /public_html/wp-content/plugins/my-plugin/my-function.php:#) in /public_html/wp-includes/pluggable.php on line #
Normalmente se mencionan dos archivos y el origen del problema proviene del primero, que impide que el otro funcione correctamente. Mientras tanto, la línea # indica la ubicación del código defectuoso, lo que te ayuda a localizar el problema sin tener que recorrer el archivo manualmente.
En la mayoría de los casos, la existencia de espacios en blanco adicionales o enviar el output antes de llamar al header primero causa el error. Con la ayuda de la información del mensaje de error, deberías poder resolver este problema en poco tiempo.
Solucionar ‘Cannot modify header information – headers already sent by’
Los errores tipográficos, una configuración incorrecta del software y una mala ubicación del header son algunas de las causas más comunes de este error.
A continuación, se explica cómo solucionar el mensaje de WordPress “Warning: cannot modify header information – headers already sent by“:
1. Editar archivos dañados
Si el archivo defectuoso tiene espacios en blanco, la forma más fácil de resolver el problema es editarlo manualmente a través de un FTP o del Administrador de archivos. Puedes empezar desde la línea # mencionada en el mensaje de error, y luego buscar en el resto del archivo cualquier espacio innecesario.
Asegúrate de prestar especial atención al principio y al final de las etiquetas PHP. No debe haber espacios antes de la etiqueta <?php o después de la etiqueta ?> y de la última línea de código.
Muchos editores de texto pueden eliminar los espacios en blanco automáticamente. Como alternativa, puedes utilizar herramientas online de corrección de espacios en blanco como TextFixer y Code Beautify que hagan el trabajo por ti.
2. Reemplazar archivos dañados
Si el error “Warning: cannot modify header information – headers already sent by” se origina en un plugin o tema, puedes solucionarlo fácilmente reinstalando el software. Si se trata de un archivo del núcleo de WordPress, la mejor solución es sustituir el archivo defectuoso por una versión nueva y reiniciar el sitio web. La nueva instalación generará el archivo adecuado automáticamente.
3. Reubicar la sentencia del header
Por defecto, el header debe ser llamado primero antes de enviar cualquier output del body. Enviar un output antes de llamar al header, incluyendo tener secciones HTML no parseadas en el archivo PHP, posiblemente cause el error. Así es como se ve un código incorrecto:
<html> <?php header('Location: http://www.hostinger.com/'); ?>
Para resolver este problema, debes encontrar las sentencias que envían el output encima del header. Luego, mueve la sentencia del header por encima de la sentencia defectuosa y haz las modificaciones necesarias al código según corresponda.
Conclusión
Ya sea que pegues un fragmento de código en tu archivo, insertes un nuevo plugin/plantilla o escribas código manualmente, corres el riesgo de agregar espacios en blanco adicionales al archivo. Si te descuidas, esto puede desencadenar el error “Warning: cannot modify header information – headers already sent by“.
¿Te ha resultado útil nuestro tutorial para resolver este error de WordPress? Háznoslo saber en la sección de comentarios más abajo.
Comentarios
September 09 2018
Gracias, me has salvado la vida ;) Efectivamente era un espacio en blanco en la linea de function que indicaba que separaba dos comillas que debían ir juntas.
October 10 2019
Excelente ayuda, simplemente tome el primer archivo.php y eliminé las líneas en blanco y ...solucionado..!!, Muchas gracias por compartir estas ayudas
October 10 2019
Hola Angello, nos alegra que te haya servido!
January 04 2020
Muchas gracias, sos un genio, me salvaste de renager largas horas encontrando el problema.
June 20 2020
Me has salvado la vida Gustavo, no daba con el error que me producia mi plugin personalizado. He estado con el problema como 3 o 4 horas sin encontrar solucion, hasta que he leido tu post. En mi caso el problema no ha sido en concreto los espacios en blanco. En mi caso era unos echo para mostrar información miestras desarrolo mi plugin personalizado que actualiza precios en el carrito, Muchisimas gracias.
June 26 2020
Hola Francisco, esas son muy buenas noticias! Muchos éxitos con tu proyecto y gracias por leernos.
August 28 2020
Excelente ayuda, resulta que tenias espacio en blanco en functions.php del tema seleccionado. Gran ayuda felciitaciones.
August 28 2020
Muchas gracias por tus comentarios Jimmy, que bueno que la información te haya sido de ayuda. ¡Saludos!
September 10 2020
Excelente aunque parece muy simple siempre son necesarias este tipo de ayudas solo con quitar espacios de mas de lineas comentadas hasta el final del código producían este error
September 11 2020
Hola, gracias por tu comentario! Nos alegra que te haya servido :)
September 26 2020
excelente, muchas gracias a funcionado todo correctamente con lo de eliminar espacios
October 02 2020
Hola Mileydi, ¡gracias por tu comentario! Nos alegra que te haya servido y hayas podido resolver tu problema :)
January 15 2021
Estaba haciendo una tienda en línea para un cliente y tengo que decir que no la estaba haciendo con Wordpress, pero desde que agrege unos meta tags que tenian muchos espacios me empesaron a salir errores en las redirecciónes que hacia la página, y me estresé mucho y hasta pense en borrarla toda y hacerla de nuevo, jajaj, pero gracias a ti lo solucione, no tenia ni idea del porque sucedia esto, gracias.
January 28 2021
Este error aparece en la nueva versión de Redsys. Además de esos espacios en blanco hay que quitar el último ?> que cierra el php. Además cambiar el primer tabulado por salto de linea más tabulado. Concretamente en este archivo: wp-content/plugins/redsys/ApiRedsysIS/Model/ISGenericXml.php
March 10 2021
Gracias!! me acabas de solucionar el problema en 5 min. y llevo casi un dia buscando el error!! Gracias
March 11 2021
Hola Santiago! Qué bueno, nos alegra que te haya sido útil el tutorial. Saludos!
September 01 2021
Fenomenal, clarito, bien explicado en 4 líneas y efectivo. Al parecer tenía el wp-config con un espacio en blanco . Esu sitio que no muevo mucho y al tratar de entrar en el admin me quedaba pantalla en blanco. Gustavo un 10.
September 07 2021
Qué bueno que te haya servido el tutorial, Martin. Saludos!