Skip to content

WordPress RSS Yazım Hatası Sorunu

WordPress, blog yazarken ihtiyaç duyabileceğiniz neredeyse herşeyi öntanımlı olarak sağlıyor. Geniş eklenti yelpazesiyle de eksikler kolayca tamamlanabiliyor. Fakat zaman zaman bu eklentiler enteresan sorunlar da çıkarabiliyor.

Bugün wordpress kullanan bir siteyi feedburner’a kaydetmeye çalışırken feedburner RSS’nin geçersiz olduğundan dert yandı. Firefox yüksek bir zeka örneği ile geçersiz de olsa RSS’i görüntüleyebildiğinden ilk başta sorunu göremedik. Daha sonra Google’dan ulaştığım bir iki forumda bunun dosyanın başında oluşan bir boşluk karakterinden kaynaklanabildiğini okudum. Firefox ile kaynak koduna bakarak bu durumu göremediğimizden wget ile RSS’i indirip baktım. Gerçekten de yarım saatimizi çalan şey dosyanın en başında bir boşluk karakteriydi. -Evet sadece basit bir boşluk.-

Forumlarda sayfayı oluştururken kullanılan dosyalardan herhangi birindeki yazım hatasının bu duruma neden olabileceği yazıyordu. Çözümler de yazım hatasını bulup düzeltmek yönündeydi. Ama birçok dosya içinde fazladan yazılmış bir boşluğu bulmak pek kolay değildi.

Bir süre forumların gazıyla birkaç dosyada arama yaptıktan sonra aklıma daha pratik bir fikir. Çıktının başlaması gereken yeri biliyorduk. Buradan önceki belleğe aktarılan tüm çıktı da soruna neden olan o boşluk olduğundan sorunun çözümü çıktının başlaması gereken yerden hemen önce bellekteki herşeyi silmekti. Bunu da ob_clean() fonksiyonu ile sağladık.

Sonuç olarak RSS’yi oluşturan wp-includes/feed-rss2.php dosyasınında

11. echo ‘<?xml version=”1.0″ encoding=”‘.get_option(‘blog_charset’).’”?’.'>’; ?>

olan kısmı

11. ob_start();
12. echo ‘<?xml version=”1.0″ encoding=”‘.get_option(‘blog_charset’).’”?’.'>’; ?>

yapmak sorunu çözdü.

Post a Comment

You must be logged in to post a comment.