Seo Php Htaccess Hakkında Bir Soru
-
Selam arkadaslar şimdi ben bu sekilde bir seo fonksiyonu kullanıyorum.
function seo($url) { $url = trim($url); $find = array('<b>', '</b>'); $url = str_replace ($find, '', $url); $url = preg_replace('/<(\/{0,1})img(.*?)(\/{0,1})\>/', 'image', $url); $find = array(' ', '&amp;quot;', '&amp;amp;', '&amp;amp;', '\r\n', '\n', '/', '\\', '+', '<', '>'); $url = str_replace ($find, '-', $url); $find = array('é', 'è', 'ë', 'ê', 'É', 'È', 'Ë', 'Ê'); $url = str_replace ($find, 'e', $url); $find = array('í', 'ý', 'ì', 'î', 'ï', 'I', 'Ý', 'Í', 'Ì', 'Î', 'Ï','İ','ı'); $url = str_replace ($find, 'i', $url); $find = array('ó', 'ö', 'Ö', 'ò', 'ô', 'Ó', 'Ò', 'Ô'); $url = str_replace ($find, 'o', $url); $find = array('á', 'ä', 'â', 'à', 'â', 'Ä', 'Â', 'Á', 'À', 'Â'); $url = str_replace ($find, 'a', $url); $find = array('ú', 'ü', 'Ü', 'ù', 'û', 'Ú', 'Ù', 'Û'); $url = str_replace ($find, 'u', $url); $find = array('ç', 'Ç'); $url = str_replace ($find, 'c', $url); $find = array('þ', 'Þ','ş','Ş'); $url = str_replace ($find, 's', $url); $find = array('ð', 'Ð','ğ','Ğ'); $url = str_replace ($find, 'g', $url); $find = array('/[^A-Za-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/'); $repl = array('', '-', ''); $url = preg_replace ($find, $repl, $url); $url = str_replace ('--', '-', $url); $url = strtolower($url); return $url; }
Şimdi veriyi eklerken veri adını seo fonksiyonundan geçirip dbdeki veri_seo kolonuna yazdırıyorum. Bu şekilde id yerine direk seo linkinin geçerli olup olmadıgını kontrol ediyorum.
misal
Htacces kodu RewriteRule ^urun/([0-9a-zA-Z-_]+)(/?)$ urun.php?do=$1 [QSA,L,NC] buda sonuc http://siteadi.com/urun/sun-slim-32
Sizce olması gereken şekil bu sekildemi ?Yani seo linkini dbye kaydedip çekmekmi yoksa direk ürün linkini php tarafında seodan geçirmekmi daha mantıklıdır.?
WildWamqire tarafından 14/Oca/16 14:42 tarihinde düzenlenmiştir -
Ben dbye kaydetmenin çok faydasını gördüm.
Çakışma olasılığını gözardı edersek performans açısından da hızlı oluyor.
Çakışma olasılığı ise çok büyük verilerde falan oluyor ki mantık dışı zaten. Onu da kaydettirmeden önce kontrol ettirmelisin
-
Veritabanı kaydı iyidir.
-
veritabanı kaydının daha iyi olmasının sebepleri nelerdir ? ben kayıt ettirmeden direk konu başlığını titleye çeviriyorum. ID ekleyip adres yapıyorum
-
q0x bunu yazdı
veritabanı kaydının daha iyi olmasının sebepleri nelerdir ? ben kayıt ettirmeden direk konu başlığını titleye çeviriyorum. ID ekleyip adres yapıyorum
.htaccess e eğer satır satır eklersen, sunucu .htaccessi yorumlarken tek tek tüm satırlara işlemeye çalışacak böylece yanıt süresi artar ve yavaşlar. Bu yüzden vt ye kaydedip tek sorguda seo linki yapmak daha sağlıklı.
-
Hocam sitenize 1 router kodlamanızı tavsiye ederim ya da hazır bir tane edinin. Ayrıca slug creating için de bir lib kullanırsınız ilerde başınız ağrımaz.
-
Cevap veren arkadaşlara teşekkür ederim.
@by_Tet
Zaten hocam çakışma olmaması için dbye kaydettiğim seo linkine bir önceki idnin +1 olanını koyuyorum bu sekilde id benzersiz olduğundan onun olması çok çok zor.