Home » Articole » Articole » Calculatoare » Dezvoltarea web » WordPress » Cauze şi soluţii pentru mesajul de eroare „Headers already sent” în WordPress

Cauze şi soluţii pentru mesajul de eroare „Headers already sent” în WordPress

postat în: WordPress 0

WordPress

Descriere

Ai primit un mesaj de avertizare pe browser, care spune:

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

Cauze și soluţii

Aceasta se întâmplă de obicei când spații, linii noi, sau alte însemne înainte de eticheta de deschidere <?php sau după cea de închidere  ?>, de obicei în wp-config.php. Acest lucru ar putea fi valabil şi pentru alt fișier, verifică mesajul de eroare, deoarece va lista numele de fișier specific în care a apărut eroarea. Înlocuirea fișierului defect cu unul din copia de rezervă cea mai recentă sau unul de la o descărcare WordPress nouă este cea mai bună soluţie, dar dacă niciuna dintre acestea nu rezolvă problema, urmează pașii de mai jos.

  1. Descarcă fișierul menționat în mesajul de eroare prin FTP sau managerul de fișiere furnizate în panoul de control al gazdei.
  2. Deschide fișierul într-un editor de text simplu (NU MS Word sau similar). Notepad este foarte bun).
  3. Verificați dacă primele caractere sunt <?php
  4. Verificați dacă ultimele caractere sunt o etichetă de închidere PHP sau eticheta specifică de închidere ?> fără nicio linie goală sai apaţii goale după ea.
  5. Înainte de a salva, sau de a folosi Save ca dialog, asigură-te co codificarea fișierului nu este UTF-8 BOM, cu UTF-8 simplu sau orice fără sufixul BOM.

Pentru a fi sigur de sfârșitul corect al fișierului, acţionează astfel:

  1. Plasați cursorul între ? și >
  2. Acum apasă tasta DELETE de pe tastatura calculatorului
    • Notă pentru utilizatorii MAC: tasta „DELETE” pe un PC șterge caracterele din dreapta cursorului. Aceasta este ideea notei.
  3. Ţine tasta apăsată timp de cel puțin 15 secunde
  4. Acum, scrie > și salvează fără a apăsa nicio altă tastă.
  5. Dacă apeşi orice altă tastă, problema va reapare.
  6. NU PLASA COD IN BLOCURI DE COD DACĂ NU ESTE NEVOIE, PLASEAZĂ-LE ÎNTR-UN SINGUR BLOC PHP.

Greșit:

[php] <?php
un cod oarecare;
?>

<?php
alte coduri oarecare;
?>
[/php]

Corect:

[php] <?php
cod;

un alt cod;
?>
[/php]

Încarcă fișierul înapoi în server după editare și salvare.

Notă: De asemenea, verifică codificarea fișierului. Dacă fișierul este codat ca UTF-8 cu BOM, BOM este văzută ca un caracter cu care se începe afişarea.

Interpretarea mesajului de eroare

Dacă mesajul de eroare spune:

Warning: Cannot modify header information – headers already sent by (output started at /path/blog/wp-config.php:34) in /path/blog/wp-login.php on line 42

atunci problema este la linia #34 din wp-config.php, nu la linia #42 din wp-login.php. În acest scenariu, linia #42 din wp-login.php este victima. Aceasta este afectată de excesul de spații la linia #34 din wp-config.php.

Dacă mesajul de eroare spune:

Warning: Cannot modify header information – headers already sent by (output started at /path/wp-admin/admin-header.php:8) in /path/wp-admin/post.php on line 569

atunci problema este la linia #8 din admin-header.php, nu la linia #569 din post.php. În acest scenariu, linia #569 din post.php este victima. Aceasta este afectată de excesul de spații la linia #8 admin-header.php.

Alte probleme care ar putea provoca această eroare

În cazul în care ai utilizat funcția wp_redirect() sau ai încercat să foloseşti o redirectare de antet după ce antetul (sau orice conținut) a fost trimis, care mesaj de eroare va apare. Utilizează mai bine redirecţionarea javascript dacă este necesar.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *