Anasayfa / Asp.Net / Asp.Net Url Routing ile Seo Uyumlu Adresler Üretmek
Merhabalar bu yazımızda asp.net url routing ile arama motoru dostu url yapıları oluşturmaya çalışacağız. Öncelikle url routing neden gerekli ondan bahsedelim.

Asp.Net Url Routing ile Seo Uyumlu Adresler Üretmek

Merhabalar bu yazımızda asp.net url routing ile arama motoru dostu url yapıları oluşturmaya çalışacağız. Öncelikle url routing neden gerekli ondan bahsedelim. Yapılan araştırmalara göre sitenizi ziyaret eden kişilerin %90’ını, sitenize arama motorları yönlendirir. Bu yüzden arama motorlarında üst sıralarda olmak demek, sitenize çekeceğiniz kitlenin artması demektir. Eğer arama motorlarında üst sıralarda olmak istiyorsanız arama motoru optimizasyonunu yani SEO’yu iyi bilmek gerekir.  Tabi üst sıralara çıkmak için birçok parametre mevcuttur fakat bugünkü konumuz url routing SEO’nun önemli bileşenlerinden biridir.  Sitenize giren kişiler için adres çubuğunda yazan adresin önemi olmasa da, arama motorları için bu adres içinde geçen kelimeler sizi üst sıralara taşımada önemli rol oynar.

Aşağıda url routing yapılmış ve yapılmamış 2 adet adres çubuğu görünmektedir. İnceleyerek aradaki farkı görebilirsiniz.

normal url yapısı
Normal Url Yapısı
url routing
Url Routing

Biz örneğimizi yemek tariflerinin yer aldığı bir site üzerinden anlatmaya çalışalım. Web sitemize öncelikle Add New Item diyerek global.asax dosyasını ekleyelim.

global.asax ekle
Global.asax Dosyası

Dosya üzerinde aşağıdaki değişiklikleri yapalım. Url yapımızın nasıl olacağı kodların içindeki açıklama satırlarında yer alıyor.

Global.asax dosyasını kaydedip kapatıyoruz.

Örneğimiz için en az 2 adet web formumuz olması gerekiyor.Birinci sayfamız Default.aspx anasayfamız diğeride yukarıdaki koddan anlaşılacağı üzere TarifDetay.aspx sayfamız.

Anasayfamızda veritabanından çektiğimiz tarifleri listemek için  Listview, Gridview, Datalist gibi nesneler bulunabilir. Hangisinin bulunduğu önemli değil biz linkimizin bulunacağı Label’ı kaldırıp yerine Hyperlink ekliyoruz ve aşağıdaki gibi Hyperlink’i düzenliyoruz.

 Yukarıdaki kodu dikkatle inceleyin işin püf noktası bu kısımda.

 Navigate Url Kısmında KodOlustur  isminde bir fonksiyonumuz yer alıyor. Bu fonksiyon url içerisinde yer alan Türkçe karakterleri değiştiriyor ve boşluk karakterinin yerine – koyarak url yapımızı düzenliyor.

Kod oluştur fonksiyonumuzu Default.aspx.cs dosyamızın içerisine Form_Load event’ inden sonra ki kısma ekleyebilirsiniz.

Evet buraya kadar kadar ki kısım url yapımızı düzenleyerek yönlendirme işlemlerini gerçekleştirdi.

Şimdi ise yönlendirilen Tarifdetay sayfasında url ile gelen bilgiyi almakta. Sonrasını zaten biliyorsunuz sorgular vasıtasıyla veritabanından istenilen verilere ulaşabileceğiz.

İlk bakıldığında karışık gibi gelebilir ama sayfanızın arama motorlarında üst sıralara çıkabilmesi için gerekli olan url routing işlemini en basit şekliyle anlatmaya çalıştım. Kolay gelsin.

İlginizi Çekebilir!

captcha

Asp.Net ile Güvenlik Kodu (Captcha) Oluşturma

Güvenlik kodu (captcha), web sitelerimizi saldırılardan korumak için kullandığımız, basit olduğu kadar kullanışlı bir güvenlik …


14 Yorumlar

  1. Mete Oğuzhan Bayrampınar

    Abi sitemde (CS0103: The name ‘KodOlustur’ does not exist in the current context) hata var nedir acaba çözümü?

  2. Yukarıda belirttiğim Kod Oluştur fonksiyonunu aspx.cs uzantılı dosya içerisine ekleyin, sorun çözülecektir. Kolay gelsin.

  3. hocam son olayı anlamadım tam olarak son resimde ne olcak biraz daha açık anlatabilirmisiniz

  4. Son kod bloğunda linke tıklandıktan sonra yönlendirilen sayfada çalışacak kodlar var. Yemektarif sitesinde yüzlerce yemek tarifi bulunmaktadır. Bu tarifleri göstermek için ise tekbir sayfa (Tarifdetay.aspx) sayfası bulunuyor. Tarifdetay.aspx sayfası hangi tarifi göstereceğini ise linke tıkladığımızda ki site.com/Tarifler/tarif-adi/{tarifid} şeklindeki bağlantıda, tarifid verisine göre tarifi veritabanından sorgulayarak kullanıcıya gösteriyor.

  5. Saolun hocam yaptım şimdi bu işlemden sonra bunları sitemap.xml klasörüne uygun bi şekilde atmak kaldı eğer böyle bir makale yazarsanız süper olur teşekkürler

  6. Ümit Uslucan

    bu sistem ile url lerde görüntü çirkinliği kaybolmuş oluyor ve arama motorunda üste çıkmak için çok faydası görülmektedir

  7. Hocam, adres yapısı doğru şekilde çalışıyor ama sitenin tasarımı patladı. Css ve jquery dosya yollarını bulamıyor url yapısı değiştiği için. Onu nasıl düzeltiriz?

  8. hoca ben bunu ürünler için kullandım ama yardımınza ihtiyacım var
    ana sayfadan urunId ile gönderiyoruz urun sayfasına tamam burada sorun yok urun sayfası açılıyor lik istediğimiz gibi ama
    Incorrect syntax near ‘=’. (SELECT dbo.Urunler.* FROM dbo.Urunler Where UrunId=)
    böyle bir hata alıyorum düzeltemedim bir türlü
    birde urunId ile çekmeden denedim önce resimlerin adı ve yolu görünüyor ama resimler çıkmıyor
    repeater ile çekiyorum yardımcı olabilirseniz çok iyi olur hocam

  9. Bunu uygularken css ve resim hatası alanlar dosyaların başına ‘/’ (tırnak işaretlerini silin) işaretini getirin sorununuz düzelecektir

  10. hocam kodu uyguladım fakat veri tabanında şu hatayı veriyor

    Gerekli bir veya daha fazla parametre için girilen değer yok.

    yardımcı olursanız sevinirim.

  11. sayfadaki dropdownlist1de seçim yaptığında seçim yaptığım verinin ID sine eşit seo addındaki taplodaki veriyi çekip adres çubuğuna yazdırmak istiyorum bunun kodunu paylaşmanız mümkünmü acaba.

  12. Incorrect syntax near ‘=’.
    hatası bir turlu çözemedım :S:S

  13. Merhaba öncelikle çok teşekkürler çok yararlı oldu ayrıca bir sorum olacak. /Default.aspx yerine /Anasayfa yazılması için

    routes.MapPageRoute(“”, “Anasayfa”, “~/Default.aspx”);

    kodunu deniyorum ama işe yaramıyor bu konuda yardımcı olabilir misiniz?

  14. tem bende calışıyor fakat şöyle bir sorun var localhost:12342/ürün/3/nike ürün id ve adını böyle alabiliyorum fakat açılan sayfada ürünüm var ürüne tıkalyınca şöyle bir şey oluyor localhost:12342/ürün/3/nikealtürünler/8 urlenin yanına url ekliyor bunun sebebi nedir nasıl düzelte bilirim norlmalde olması gereken localhost:12342/nikealtürünler/8 değil mi ?

Bir cevap yazın

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

Time limit is exhausted. Please reload the CAPTCHA.