Warning: Cannot modify header information – headers already sent by (output started at …\wp-contact-form\wp-contactform.php:1) in c:\program files\php\www\test\wp-includes\pluggable-functions.php on line 272

Buradaki wp-contactform.php yerinde daha çok wp-config.php de olabiliyor veya herhan gi bir wordpress dosyası. Her ne kadar çözümü basit bir sorun olsa da siteyi çökertmeye yetiyor da artıyor bile 🙂

Bu sorunun sebebi, siz bir dosya düzenleyici ile php dosyasını düzenlediğinizde, normal yapısı ANSI olan php dosyası UTF-8‘e dönüşebiliyor kaydederken. Aslında siz hata göremiyorsunuz fakat wpb2ftp ile girip bakarsanız dosyanın en başında şunu görürsünüz.

<?php

Bu anlamsız karakterler yorumlanamadığı ve php dosyası tanınamadığı için yukarıdaki gibi dosya.php:1 hatası alırsınız. Buradaki 1 ilk satır anlamına gelir.

ÇÖZÜM 1
Çözüm şu, dosyanızı düzenlerken ANSI ‘de çalışın. Peki bunu nasıl yapıcam derseniz, notepad++ programını indirin. Bu program üzerinden anlatıcam ama genelde tüm düzenleyicilerde yöntem ve mantık aynıdır. Programı kurduktan sonra hata mesajı aldığınız dosyanızı bu program ile açın. Daha sonra programın üst menüsünden Biçim altında ANSI Karakter Biçimine Dönüştür‘ü seçin. Dosyanızda düzenleme yapacaksanız yapın ve kaydedin. Artık bu dosya ile sorun yaşamayacaksınız 😉

ÇÖZÜM 2
Yukarıda belirtmeyi unutmuşum. Bu hata tema dosyalarında sorun yaratmıyor. Yani tema soyalarınız UTF-8 formatında olabilir, olmalı 🙂 Fakat eklenti dosyalarında sorun olabiliyor. Oysa ki eklenti dosyalarımızda da Türkçe karakter kullanmamız gerekebiliyor. İşte bu sorunu halletmek yani hem UTF-8’e dönüştürmek hem de yukarıdaki karakterlerden kurtulmak için şunu yapmalıyız.

Önce dosyayı UTF-8 olarak düzenliyoruz. Ardından Ultra Edit programını açıyoruz. (Notepad++ bu anlatacağımı yapamıyor) Yapacağımız işlem kısaca programın dosyaların UTF-8 olup olmadıklarını otomatik olarak tespit etmesini kapatmak. Ultra editin ayarlarından Advanced Bölümünden-> Configuration bölümüne giriyoruz. Orada File Handling Altında -> Unicode UTF-8 Detection bölümünden Auto Detect UTF-8 files seçeneğinin işaretini kaldırıyoruz. Böyle yapıp dosyamızı açınca dosyada o garip karakterleri görebiliyoruz. Onları silip kaydedince sorun çözülüyor.