11 Kasım 2013 Pazartesi

Merhaba Arkadaşlar.
Şimdi sizlerle geçenlerde karşılaştığım ve çözümünü bulmanın biraz zaman aldığı bir problemi ve çözümünü anlatacağım. Problem kısaca şöyle: Wordpress'in 3.7.1 sürümüyle resim dosyası yükledim ve bir baktım resmilerin kimi kırık şeklinde görünürken kimi ise normal görünüyor. Sonra birkaç dosya daha yükleyince sorunun dosya ismindeki Türkçe karakterlerden olduğunu anladım. Peki şimdi ne yapmalı?

Ben wordpress'i kurarken İngilizce olarak kurmuştum ve belki temayı Türkçeleştirirsem sorun çözülür dedim ve uygun bir şekilde Türkçeleştirdim, her şey yolunda. Sonra tekrar dosya yükledim baktım sorun yine çözülmemiş: Bu ne ya! Oynamıyoom işte:D

Sonra döndüm Türkçe karakter sorunuyla ilgili araştırmaya ve piyasadaki çoğu yazının normal UTF-8 dönüşümüyle ilgili olduğunu ve benim sorunuma çözüm olmadığını gördüm (zaten bu yazıyı da böyle bir boşluğu doldurmak ve ekstradan bir kaynak olsun diye yazıyorum) ve en sonunda bu adreste sorunun çözümünün anlatıldığını gördüm. İlgili yazıda sorunu çözmek için kullanımdaki tema dosyasının function.php dosyasına resim isimlerindeki Türkçe karakter dönüşümlerinin yapılmasına dairbir kod eklememiz gerektiğinden bahsediyor ve kod şu şekilde:
function dosya_adi_TR($filename, $filename_raw){
$filename = remove_accents($filename);
if (seems_utf8($filename)) :
if (function_exists('mb_strtolower')) :
$filename = mb_strtolower($filename, 'UTF-8');
endif;
$filename = utf8_uri_encode($filename);
endif;
return $filename;
}
add_filter('sanitize_file_name', 'dosya_adi_TR', 10, 2);
Bu kodu tema dosyasındaki function.php dosyasının içine gömünce sorun çözülmüş oluyor.

Dosya Yükleme (Upload) Sorununu ve Çözümünü Anlatan Resimleri Aşağıda Vermeye Çalıştım

1- Aralarında Türkçe karakterleri de içeren yükleme yapacağımız resim dosyaları
Yükleme (upload) yapacağımız dosyalar

2- Yükleme yaptıktan sonra Türkçe karakter içeren resimlerin tam görünmemesi (kırık görünüm)
Yükleme sonrası Türkçe karakter olan isimlerin kırık görünümü

3- Yükleme yapılan bu dosyaların upload edildiği kılasördeki dıurumları. Resimde de görüldüğü gibi Türkçe karakter içeren resimlerin isimleri isim olmaktan çıkmış:D
Dosyaların yüklendiği (upload kılasörü) yerdeki durumları

4- Aktif temamız. Sizinki başka bir şey de olabilir.
Aktif temamız
5- Aktif temamızın function.php dosyası
Tema kılasöründeki function.php dosyası
6- function.php dosyasına ilgili kodu gömme. Ben dosyanın en sonuna yerleştirdim kodu.
function.php dosyasına ilgili kodları gömme

7- function.php dosyasında değişiklik yaptıktan sonraki dosya yüklemelerimizdeki sorunun çözüldüğünü resmeden görüntü.
Function.php dosyasındaki değişiklikten sonra resim yükleme 

8- function.php değişikliği sonrası yükleme yapılan kılasördeki dosyaların yeni isimleri. Kısacası: Dosya isimlerindeki Türkçe karakterleri değiştir ve sorun bitsin.

Yüklenen dosyaların yeni isimleri

Umarım yararlı olmuştur.

Kaynak: http://wolkanca.com/wordpress-yuklenen-dosyalarda-turkce-karakter-sorunu/

2 yorum: