lostyazilim
tr.link

Wp Resimleri Yüklerken Türkçe Karakteri Çevirme

6 Mesajlar 1.381 Okunma
lstbozum
tr.link

candar375 candar375 Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 06.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Webmaster/Öğrenci
  • Konum Konya
  • Ad Soyad A** C**
  • Mesajlar 283
  • Beğeniler 68 / 49
  • Ticaret 2, (%100)
Merhaba arkadaşlar wordpress e resim yüklerken, resim url yolunu türkçe karakteri ingilizce karaktere çeviren kod veya eklenti arıyorum.

Örnek:
Resim ismi: "wm aracını çok seviyorum"
Yüklenen Resim Url Yolu: "wm aracini cok seviyorum"

şeklinde değişecek.

Umarım anlatabilmişimdir teşekkür ederim.
 

 

wmaraci
reklam

candar375 candar375 Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 06.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Webmaster/Öğrenci
  • Konum Konya
  • Ad Soyad A** C**
  • Mesajlar 283
  • Beğeniler 68 / 49
  • Ticaret 2, (%100)
Güncel
 

 

ahmetp ahmetp WM Aracı Kullanıcı
  • Üyelik 19.05.2017
  • Yaş/Cinsiyet 40 / E
  • Meslek Diğer
  • Konum Diğer
  • Ad Soyad A** P**
  • Mesajlar 332
  • Beğeniler 39 / 144
  • Ticaret 1, (%100)
functions.php içerisine şu kodları eklerseniz oluyor. ı harfini i yapmıyor direkt siliyor ama ş'yi s, ö'yü o yapıyor.

function sanitize_filename_on_upload($filename) {
$ext = end(explode('.',$filename));
$sanitized = preg_replace('/[^a-zA-Z0-9-_.]/','', substr($filename, 0, -(strlen($ext)+1)));
$sanitized = str_replace('.','-', $sanitized);
return strtolower($sanitized.'.'.$ext);
}

add_filter('sanitize_file_name', 'sanitize_filename_on_upload', 10);



Not: Tabii bu kod, url'yi düzeltiyor. Yani site.com/resim.jpg şeklinde. Resmin wp içinde görünen isminde halen Türkçe karakterler olacak.

Yani wm-aracını-çok-seviyorum.jpg diye bir dosya yüklerseniz wm-aracn-cok-seviyorum.jpg olacak.
 

 

candar375 candar375 Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 06.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Webmaster/Öğrenci
  • Konum Konya
  • Ad Soyad A** C**
  • Mesajlar 283
  • Beğeniler 68 / 49
  • Ticaret 2, (%100)
Anladım hocam sağolun i harfini neden siliyor ki acaba
 

 

wmaraci
wmaraci

ahmetp ahmetp WM Aracı Kullanıcı
  • Üyelik 19.05.2017
  • Yaş/Cinsiyet 40 / E
  • Meslek Diğer
  • Konum Diğer
  • Ad Soyad A** P**
  • Mesajlar 332
  • Beğeniler 39 / 144
  • Ticaret 1, (%100)
Bilmiyorum ama i harfi de önemliyse onun yerine şu aşağıdaki kodu kullanın.

add_filter( 'sanitize_file_name', 't5_sanitize_filename', 10 );

function t5_sanitize_filename( $filename )
{
$filename = html_entity_decode( $filename, ENT_QUOTES, 'utf-8' );
$filename = t5_translit( $filename );
$filename = t5_lower_ascii( $filename );
$filename = t5_remove_doubles( $filename );
return $filename;
}


function t5_lower_ascii( $str )
{
$str = strtolower( $str );
$regex = array(
'pattern' => '~([^a-z\d_.-])~'
, 'replacement' => ''
);

return preg_replace( $regex['pattern'], $regex['replacement'], $str );
}


function t5_remove_doubles( $str )
{
$regex = apply_filters(
'germanix_remove_doubles_regex'
, array(
'pattern' => '~([=+.-])\\1+~'
, 'replacement' => "\\1"
)
);
return preg_replace( $regex['pattern'], $regex['replacement'], $str );
}


function t5_translit( $str )
{
$utf8 = array(
'Ç' => 'C'
, 'ç' => 'c'
, 'ğ' => 'g'
, 'Ğ' => 'G'
, 'ı' => 'i'
, 'I' => 'I'
, 'Ö' => 'O'
, 'ö' => 'o'
, 'ş' => 's'
, 'Ş' => 'S'
, 'Ü' => 'U'
, 'ü' => 'u'

);

$str = strtr( $str, $utf8 );
return trim( $str, '-' );
}


Başka değiştirmek istediğiniz karakter varsa array içine aynı şekilde ekleyebilirsiniz. Mesela '+' => 'arti' gibi.

Kolay gelsin.
candar375

kişi bu mesajı beğendi.

candar375 candar375 Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 06.08.2017
  • Yaş/Cinsiyet 25 / E
  • Meslek Webmaster/Öğrenci
  • Konum Konya
  • Ad Soyad A** C**
  • Mesajlar 283
  • Beğeniler 68 / 49
  • Ticaret 2, (%100)
Teşekkürler hocam Allah razi olsun
ahmetp

kişi bu mesajı beğendi.

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al