Wordpress Resimlerde türkçe karakter sorununun düzeltilmesi

SadmiN

♥ Evli Mutlu Çocuklu ♥
Yönetici
Wordpress Resimlerde türkçe karakter sorununun düzeltilmesi

Wordpress resim isimlerinin değişimi Otomatik resim isimlerindeki türkçe karakter hatalarını giderme nasıl yapılıyor ?


Bir sitemizde yer alan bir problemdi bu değerli arkadaşlarım. Taşıma başka bir hosta gitme ya da server değişikliği hatta hiç sıkıntı yok iken wordpress güncellemesi sonrasında böyle bir hata alabilirsiniz. Sitedeki tüm resimler türkçe karakter hatasına düşmüş olabilir.

Bunun için bir çok eklenti buldum ama hiç birisi tam olarak işe yaramıyor. Ya paralılar ya da tek tek resimlerin düzeltilmesi gerekiyor sistemde. Bu bizim için eziyetten başka bir şey olmazdı değil mi ?

Türkçe Karakter hatası neden oluyor ?

Benim belirgin olarak şundan olur demem doğru olmayacaktır. Siteyi taşımadık ya da başka bir şey yapmadık. Sadece güncelleme sonrasındna ( wp güncellemesi ) böyle bir hata aldık. Yazılımcı, bunun bir eklentiden dahi olabileceğini söyledi ama sonuç olarak düzelttik aşağıdaki yöntem ile.

Sevgili kardeşimiz Yazılımcı Can Yılmaz kardeşimize durumdan bahsettik ve küçük bir kodlama ile türkçe karakter hatasından dolayı görünmeyen resimleri saniyesinde düzeltti. Kendisine teşekkür ediyorum. Onun bilgisi dahilinde yapılan kodlamayı sizlerle paylaşmak istiyorum. Ola ki aynı durumdan dolayı sıkıntıya düşersiniz işinize yarar diye düşünüyorum.

Öncelikle kod olarak indirmek yerine kodlamanın içeriğini sizlere sunmak istiyorum. Bu kodlamayı resmiduzelt.php şeklinde kayıtlayın utf 8 olarak bir txt dosyasına atın ana dizine ve çalıştırın bu kadar arkadaşlarım.

<?php $utfDuzelt=array( 'ı'=>'ı', 'Ä°'=>'İ', 'ç'=>'ç', 'Ä'=>'Ğ', 'Ç'=>'Ç', 'ü'=>'ü', 'ÅŸ'=>'ş', 'ĞŸ'=>'ğ', 'ö'=>'ö', 'Ãœ'=>'Ü', 'Ö'=>'Ö', 'ÅŸ'=>'Ş', 'Ş'=>'Ş', ); function klasoreBak($klasor){ global $utfDuzelt; $liste=scandir($klasor); foreach($liste as $ls) { if($ls=='.' || $ls=='..') continue; $eleman=$klasor.'/'.$ls; //echo $eleman.'<br>'; if(is_dir($eleman)) klasoreBak($eleman); $yeniEleman=$klasor.'/'.strtr($ls,$utfDuzelt); if($yeniEleman != $eleman) { rename($eleman,$yeniEleman); echo strlen($yeniEleman).'-'.$eleman.'- => -'.$yeniEleman.'-<br>'; } } } klasoreBak('/home/siteisminizneiseonuyazin/public_html/wp-content/uploads'); echo 'bitti'; ?>

Yukarıdaki kodlamada en son bölümde url yolunu kendinize göre düzenleyeceksiniz.
 
Üst