Je reçois une erreur sur mon site concernant "les en-têtes déjà envoyés":
Avertissement: impossible de modifier les informations d'en-tête - en-têtes déjà envoyés par (sortie commencée à ........./wp-admin/menu-header.php: 161) dans ....../wp-includes/pluggable .php à la ligne 881
J'ai lu le Wordpress FAQ qui traite de cela, mais - comme vous pouvez le voir - cette erreur est causée par le noyau Wordpress (et même pas à la fin d'un fichier).
Fait intéressant, je ne reçois pas cette erreur sur mon ordinateur local. Seulement sur mon serveur.
Que puis-je faire à ce sujet?
J'utilise Wordpress 3.4.2
Wordpress fournit un moyen d'empêcher le rendu du code HTML d'en-tête en ajoutant &noheader=true
à l'URL.
Cela fera que l'en-tête HTML attendra que vous l'appeliez manuellement, de sorte que vous puissiez faire une redirection avant.
Pour rendre ultérieurement l'en-tête HTML à partir de votre page, vous devrez utiliser ceci:
if ( isset($_GET['noheader']) ) {
require_once(ABSPATH . 'wp-admin/admin-header.php');
}
Pour plus d'informations, lisez cet article:Problème de fonction dans WordPress et wp_redirect ().