Php Seo ( Sef ) Link Yapımı – Fonksiyon

 

Merhaba arkadaşlar, php programlama dili ile girilen başlığın sef halini yapma uygulamasını inceleyeceğiz.

Öncelikle sef linkin yararı konusunda kısacık bilgi vereyim; sef link demek arama motoru dostu link demek.

Php Sef Link

Sef link ile sitenize daha çok ziyaretçi çekebilirsiniz.

Çünkü kullanıcılar ararken girdiği anahtar kelime sizin linkinizde geçiyorsa örneğin google sizi daha üst sıralarda gösterecektir. Bu yüzden seo linkin önemi büyüktür.

Size kullanımınız için en uygun gördüğüm seo link şu şekildedir;

www.siteadi.com/yıl/ay/seolink.html bu şekilde kullanım seo için uygundur.

Kendi sitemden örnek verecek olursam; “https://www.muslu.net/2015/03/c-masaustu-kisayol-olusturma-uygulamasi.html”

bakın aynı şekilde kendimde kullanmaktayım.

Şimdi seo link fonksiyonunu vereyim;

<?php // seo link fonksiyonu function SeoYap($baslik){ $onceki = array('Ç', 'Ş', 'Ğ', 'Ü', 'İ', 'Ö', 'ç', 'ş', 'ğ', 'ü', 'ö', 'ı', ' ', '.'); $sonraki = array('c', 's', 'g', 'u', 'i', 'o', 'c', 's', 'g', 'u', 'o', 'i', '-', ''); $yeni = str_replace($onceki, $sonraki, $baslik); $yeni = preg_replace("@[^A-Za-z0-9\.\-_]@i", '', $yeni); $yeni = strtolower($yeni); return $yeni; } ?>

Fonksiyonu php dosyanıza ekledikten sonra kullanımı aşağıdaki gibidir.

<?php
$baslik = "Php ile Seo Link Fonksiyonu Yapımı";  // seosuz başlık
echo SeoYap($baslik);

Bu fonksiyonu kullanarak yaptığım uygulama aşağıdaki gibidir.

Öncelikle başlığı normal yazdırıp daha sonra seo link halini yazdırdım. Seo link dediğim sadece başlığı sef hale çevirilmiş halidir.

Buna ek olarak yukarıda bahsettiğim gibi yıl,ay ve linkin sonuna .html eklemeniz gerekmektedir.

<?php

// seo link fonksiyonu
function SeoYap($baslik){
$onceki = array('Ç', 'Ş', 'Ğ', 'Ü', 'İ', 'Ö', 'ç', 'ş', 'ğ', 'ü', 'ö', 'ı', ' ', '.');
$sonraki = array('c', 's', 'g', 'u', 'i', 'o', 'c', 's', 'g', 'u', 'o', 'i', '-', '');
$yeni = str_replace($onceki, $sonraki, $baslik);
$yeni = preg_replace("@[^A-Za-z0-9\.\-_]@i", '', $yeni);
$yeni = strtolower($yeni);
return $yeni;
}

$baslik = "Php ile Seo Link Fonksiyonu Yapımı"; // seosuz başlık

echo "Seosuz hali: <strong>".$baslik."</strong>";
echo "\n 

Seolu hali: <strong>".SeoYap($baslik)."</strong>";

?>

Uygulamanın kaynak dosyaları

11 thoughts on “Php Seo ( Sef ) Link Yapımı – Fonksiyon

  1. Ahmet

    Merhabalar ben php bot yaziyorum ancak sitedeki image linklerini cekip klasore indirmek istiyorum siteyi kodlayanlar sahislar URL lerin cogunda bosluk karakteri fotograf linkini acinca %20 ekleyerek bosluklari dolduruyor sizin yaptiginiz kodda tirnak arasina “%20” yazdigimda % yi gormuyor nasil yapabilirim bunu.

    Reply
    1. Tayyip Muslu Post author

      decodeURIComponent ve encodeURIComponent javascript methodları kullanılarak yapılıyor olabilir. Bir bakmanı tavsiye ederim.

      Reply
  2. Mustafa

    Hocam soyle soyliyim. Yanlıs aksettim sanırım. Soyleki zorun upload size vs. Bir sorun yok sadece uyeler upload ederken resim adinda turkce karakter varsa resim goruntulenmiyor.
    Yardiminiz icin simdiden tesekkurler.

    Reply
    1. Tayyip Muslu Post author

      Upload ettiğiniz dosya adını sunucuya gönderirken, bu sef fonksiyonunu kullanarak değiştirin o şekilde sunucuya gönderin. Böyle yaptığınızda sorun olacağını sanmıyorum. Eğer çakışma felan olmasını istemiyorsanız zamanı md5 ile şifreleyip oluşturulan isim ile sunucuya gönderebilirsiniz.

      Reply
  3. Mustafa

    Hocam Merhabalar Kolay Gelsin… Başarılı Bir Paylaşım Olmuş Emeğinize Sağlık.

    Ancak şöyle bir sıkıntım var sitemde üyeler istedikleri bir resmi upload ile sitede paylaşabiliyor. Ama türkçe karakter içeren resimler görünmüyor. Kod konusunda acemiyim biraz öğrenmeye çalışıyorum. Araştırmalarım sonucu seflink fonksiyonundan geçirerek db ye türkçe karakter dönüşümle kayıt olursa sıkıntı olmuyor. Sorun tam da burda başlıyor. Script te upload ile ilgili size, format vs. ayarlarını tam bulamadım yani nereye ne ekleyeceğim konusunda bilgim yetersiz kaldı. Form kısmı bu şekilde başlıyor <form method="POST" action="” id vs.

    Yardımlarınız için şimdiden çok teşekkürler hocam…

    Reply
    1. Tayyip Muslu Post author

      [php]
      if ($_FILES[‘upfile’][‘size’] > 1000000) {
      throw new RuntimeException(‘Exceeded filesize limit.’);
      }[/php]

      Mustafa, yukarıda dosyanın boyutunu alıp bunu kontrol edebileceğin bir örnek var, [‘upfile’] dosya seç’in id si olacak [‘size’] ise seçili dosyanın boyunutu alacaktır. Bunu bir değişkene alarak da işlem yapabilirsin. Php file upload get file size şeklinde google’da aratırsan, ingilizce bir çok kaynak bulabilirsin. Bu tarz konularda yabancı sitelerde daha rahat konular bulunuyor. http://php.net/manual/en/features.file-upload.php PHP.net tende bolca örnek bulabilirsin. O attığım link upload ile ilgili bir örnek. Başarılar.

      Reply
  4. tahsin

    Başarılar diliyorum. Bir konuda yardımcı olabilirseniz sevinirim. web sitemde iletisim.php,hakkımızda.php,ürünler.php gibi dosyalara linkler var. bu linkleri mesela hakkımızda yerine ayciceği-zeytin-yagı gibi sefler yapmak istiyorum. nasıl yapabilirim. İyi çalışmalar.

    Reply
    1. Tayyip Muslu Post author

      htaccess adında bir dosya oluşturun sitenizin ana dizininie içerisinde şunları düzenleyip ekleyin.
      “htaccess” olacaktır sadece, uzantısı olmayacak.
      RewriteEngine on
      RewriteRule ^aycicegi-zeygin-yagi/$ /hakkimizda.php [L,NC]

      Reply

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir