lostyazilim
tr.link

Türkçe URL Problemi

6 Mesajlar 1.031 Okunma
lstbozum
tr.link

aaktan aaktan WM Aracı Kullanıcı
  • Üyelik 13.01.2016
  • Yaş/Cinsiyet 35 / E
  • Meslek Öğrenci
  • Konum İzmir
  • Ad Soyad A** A**
  • Mesajlar 5
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)
Merhaba,

Konu başlıklarını yazdığım şekilde URL 'ler de Türkçe karakterle yaratılıyor. Türkçe karakterleri nasıl ing. karaktere çevirebilirim ?

Örn:

www.site.com/modülleri-hakkında-bilgiler/12

Bunu otomatik olarak düzeltsin istiyorum,

www.site.com/modulleri-hakkinda-bilgiler/12 gibi...
 

 

wmaraci
reklam

Ultibil Ultibil Gelişmiş Web Yazılımları Kullanıcı
  • Üyelik 10.05.2016
  • Yaş/Cinsiyet 38 / E
  • Meslek Web Tasarım
  • Konum İzmir
  • Ad Soyad R** E**
  • Mesajlar 292
  • Beğeniler 47 / 95
  • Ticaret 9, (%100)
Tayfun Erbilen'in hazırladığı sef link yapısını kullanabilirsin.

www.erbilen.net/php-sef-link-fonksiyonu/

/**
* @param $string
* @return mixed
*/
function permalink($string)
{
$find = array('Ç', 'Ş', 'Ğ', 'Ü', 'İ', 'Ö', 'ç', 'ş', 'ğ', 'ü', 'ö', 'ı', '+', '#');
$replace = array('c', 's', 'g', 'u', 'i', 'o', 'c', 's', 'g', 'u', 'o', 'i', 'plus', 'sharp');
$string = strtolower(str_replace($find, $replace, $string));
$string = preg_replace("@[^A-Za-z0-9\-_\.\+]@i", ' ', $string);
$string = trim(preg_replace('/\s+/', ' ', $string));
$string = str_replace(' ', '-', $string);
return $string;
}

// Kullanımı
$deger = "Bu Türkçe Bir Yazıdır";
echo permalink($deger);
cihaneken aaktan HapyMan

kişi bu mesajı beğendi.

aaktan aaktan WM Aracı Kullanıcı
  • Üyelik 13.01.2016
  • Yaş/Cinsiyet 35 / E
  • Meslek Öğrenci
  • Konum İzmir
  • Ad Soyad A** A**
  • Mesajlar 5
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)
Hocam teşekkürler yönlendirme için fakat functions.php dosyasına ekledim olmadı. Benim kodlar aşağıdaki gibi bu kodlarda sanırım düzeltme yapmam gerekiyor, rica etsem kontrol edebilir misiniz ?

unction genPagePermalink($title)
{
$permalink=string_limit_words($title, 9);

if(!mb_check_encoding($permalink,"UTF-8"))
{
$permalink=preg_replace('/[^a-z0-9]/i',' ', $permalink);

$permalink=trim(preg_replace("/[[:blank:]]+/"," ",$permalink));

$permalink=strtolower(str_replace(" ","-",$permalink));
}
else
{
$permalink=trim($title);
$permalink=str_replace(" ","-",$permalink);
}
$permalink = clean_permalink($permalink);

$count = 1;

$temppermalink = $permalink;

while(isValidPage($permalink))
{
$permalink = $temppermalink . '-' . $count;

$count++;
}
return strtolower($permalink);
}
 

 

Flawless Flawless Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 25.10.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Php Coder
  • Konum Antalya
  • Ad Soyad K** I**
  • Mesajlar 476
  • Beğeniler 22 / 87
  • Ticaret 7, (%100)
unction yazan yer function olmalı sanki
 

 

wmaraci
wmaraci

pxjasius pxjasius WM Aracı Kullanıcı
  • Üyelik 28.06.2015
  • Yaş/Cinsiyet 25 / E
  • Meslek PHP Dev.
  • Konum Mersin
  • Ad Soyad N** Ç**
  • Mesajlar 387
  • Beğeniler 57 / 53
  • Ticaret 7, (%86)

function genPagePermalink($title){
$find = array('Ç', 'Ş', 'Ğ', 'Ü', 'İ', 'Ö', 'ç', 'ş', 'ğ', 'ü', 'ö', 'ı', '+', '#');
$replace = array('c', 's', 'g', 'u', 'i', 'o', 'c', 's', 'g', 'u', 'o', 'i', 'plus', 'sharp');
$string = strtolower(str_replace($find, $replace, $string));
$string = preg_replace("@[^A-Za-z0-9\-_\.\+]@i", ' ', $string);
$string = trim(preg_replace('/\s+/', ' ', $string));
$string = str_replace(' ', '-', $string);
return $string;
}


bu kodları değiştirir misiniz mevcut kodunuzla hocam
 

 

aaktan aaktan WM Aracı Kullanıcı
  • Üyelik 13.01.2016
  • Yaş/Cinsiyet 35 / E
  • Meslek Öğrenci
  • Konum İzmir
  • Ad Soyad A** A**
  • Mesajlar 5
  • Beğeniler 1 / 0
  • Ticaret 0, (%0)
Hocam denedim ama olmadı
 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al