Sprang på ett lagom irriterande fel i ett WordPress-tillägg under helgen som gick. Med felmeddelandet ”Cannot modify header information – headers already sent” som enligt bl a WordPress Codex, FAQ Troubleshooting betyder att det finns tecken före/efter php-taggarna.
Öppnade den berörda filen med ett flertal olika textredigerare, men lyckades inte hitta dessa tecken. Körde till slut följande kommando i en terminal:
less filnamn.php
Och såg då att filen inleddes med ”<U+FEFF>”. Vilket innebar att filen teckenkodades med UTF-8 BOM istället för enbart UTF-8. Försökte lösa det genom att skapa en ny fil, med samma innehåll, men felet kvarstod. Googlade då lite och hittade denna lösning (via en terminal):
sed -i '1s/^\xEF\xBB\xBF//' filnamn.php
Laddade upp filen, laddade om WordPress och vips så var felet borta.