Solucionar «Warning: cannot modify header information – headers already sent by»

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.

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.

Ejemplo de una sintaxis incorrecta que causa el error warning: cannot modify header information - headers already sent by

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.

Author
El autor

Gustavo B.

Gustavo es un apasionado por la creación de sitios web. Se enfoca en la aplicación de estrategias SEO en Hostinger para España y Latinoamérica, así como la creación de contenidos de alto nivel. Cuando no está aplicando nuevos trucos en WordPress lo puedes encontrar tocando la guitarra, viajando o tomando un curso online.