WordPress Kalıcı Bağlantı Ayarlarını Değiştirme ve 301 Yönlendirmesi

WordPress içerik yönetim sisteminde kullanılan kalıcı bağlantıyı değiştirmek istediğinizde bunu ayarlar menüsünden kalıcı bağlantılar sekmesine tıklayarak rahatlıkla yapabiliyorsunuz.
Kalıcı Bağlantı Ayarları Menüsü
Kalıcı bağlantılar sizin web sayfasınızdaki içeriklerin nasıl adres alacağını ayarlıyor. Örneğin yazı ismini seçtiğinizde website.com/yazi-ismi şeklinde adres alıyor. Sayısal seçtiğinizde website.com/arsivler/123 gibi adres alıyor. Google da web sayfanızı indexlediğinde bu adresleri sizin belirlediğiniz gibi indexliyor.

Kalıcı bağlantıları ayarlarken devreye giren en önemli etken ingilizce ismi search engine optimization olan arama motoru optimizasyonu. Arama motorları çok uzun adresleri sevmiyor. O yüzden en iyisi adreslerinizi kısaltmanız ve adreslerinizde de keyword yani yazdığınız yazılarınız ile ilgili anahtar kelimelerin olması. Benim önerim kalıcı bağlantılarda yazı ismini kullanmanız.
Yeni bir blog veya wordpress tabanlı bir websayfası kurduğunuzda bu ayarları yukarıda gösterdiğim menüden kolaylıkla ayarlayabiliyorsunuz. Peki problem ne derseniz. Problem şurada başlıyor. Eğer siz daha önce kurduğunuz bir web sayfasının kalıcı bağlantı ayarlarını yine bu menüden değiştirirseniz (daha başka işlemler yapmazsanız. Aşağıda anlatacağım.) , daha önce arama motorlarının indexlediği sayfalara tıklayan kişiler o içeriğe erişemeyecekler ve 404 Bulunamadı hatasıyla karşılaşacaklar. Bu da sitenizin yenilenen adresinin arama motorları tarafından tekrar indexlenmesine kadar bu şekilde olacak ve siteniz hem index kaybedecek(arama motorları 404 bulunamadı hatası alınan sayfalarının indexlerini kaldıracaktır.) hem siteniz ziyaretçilerin gözünde prestij kaybedecektir.

Bu kaybı önlemenin yolu ise 301 yönlendirmesi yapmaktır. Örneğin daha önce ozkirdeniz.com blogum için /ay/gün/isim kalıcı bağlantısını kullanıyordum. Onu sadece yazı ismine indirgedim. Yaptığım 301 yönlendirmesiyle eski linklerime tıklayan ziyaretçiler otomatikman yeni linklere yönlendirildi. Bu şekilde hem arama motorları indexlerimi silmedi ( ve yenileriyle değiştirdi.) hem de kullanıcılar 404 Bulunamadı hatasıyla karşılaşmadı.

Gelelim bu 301 yönlendirmesinin nasıl yapıldığına. Öncelikle admin panelinizden sitenizin kalıcı bağlantı ayarları menüsüne girip kalıcı bağlantı ayarlarını Yazı ismi olarak değiştirin. Daha sonra sitenizin bulunduğu ftp ana klasöründeki .htaccess dosyasında bazı değişiklikler yapmamız gerekiyor.

Eğer önceki kalıcı bağlantınız :

1) …/?p=123 şeklinde ise herhangi bir değişiklik yapmanıza gerek yok wordpress kendisi yönlendirecektir.

2) …/yil/ay/gun/yazi-ismi şeklinde ise /%year%/%monthnum%/%day%/%postname%/
ve
Sadece …/yazi-ismi/ haline getirdiyseniz. .htaccess dosyasını not defteriyle açıp en üstüne aşağıdaki kodu yapıştırın. (Mavi olan kısmı kendi web sayfanıza göre düzenleyin.)
RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ http://www.ozkirdeniz.com/$4

 3) …/yil/ay/yazi-ismi şeklinde ise /%year%/%monthnum%/%postname%/
ve
Sadece …/yazi-ismi/ haline getirdiyseniz. .htaccess dosyasını not defteriyle açıp en üstüne aşağıdaki kodu yapıştırın. (Mavi olan kısmı kendi web sayfanıza göre düzenleyin.)

RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/(.*)$ http://www.ozkirdeniz.com/$3

 4) …/arsiv/sayisal şeklinde ise /archives/%post_id%
ve
Sadece …/yazi-ismi/ haline getirdiyseniz. .htaccess dosyasını not defteriyle açıp en üstüne aşağıdaki kodu yapıştırın. (Mavi olan kısmı kendi web sayfanıza göre düzenleyin.)
RedirectMatch 301 ^/archives/(\d+)$ http://www.ozkirdeniz.com/?p=$1

Bu işlemden sonra yapmanız gereken bir şey yok. Yönlendirmemizi yaptık. Artık eski linklerimiz yeni linklerimize yönleniyor olacak. Bir başka yazıda görüşmek üzere. 🙂

  20Yorumlar

  1. technokaptan   •  

    selamlar,

    bende kalıcı bağlantı yapımı site adı../örnekyazi şekline getiricem.şu anda site adı../yıl/ay/gün/örnekyazi şeklinde.vermiş olduğunuz gerekli kodu .htaccess dosyası içinde en yukarı derken herhangi bir işaretçinin arasında kalan kısmın üst tarafına mı yoksa kaba tabirle bodoslama en üst tarafına mı yapıştırıcaz?kod bilgim fazla olmadığı için sorma gereği hissettim.sıkıntısız aşmak istiyorum bunu.

  2. sertan   •  

    Peki …../yazi-ismi/ halinden …/?p=123 haline dönüştürmek için nasıl bir düzenleme yapacağız?
    Zira /yazı-ismi halindeyken cpu tavan yapmaya başladı ve site duruyor. …/?p=123 yapınca sorun düzeliyor. İndexlerime de kıyamadığım için ortada kaldım şu an..

    • Burak Özkırdeniz   •     Yazar

      /?p= haline dönüştürme yapmanıza gerek yok. Zaten o tip url kullanılabilir durumdadır. Bu işlemi yaparak /?p= gösterimini maskeliyoruz sadece.

    • Burak Özkırdeniz   •     Yazar

      WordPress admin panelinden Ayarlar > Kalıcı Bağlantılar menüsünden yapabilirsin.

  3. enes   •  

    gerçekten hit kaybımı önlediniz çok teşekkürler

  4. Hakan   •  

    Merhabalar daha önceki kalıcı bağlantıyı unutmuşum sonradan yazıya çevir miştim nasıl öncekini ne olduğunu öğrenebilirim

  5. tufan aydın   •  

    Hocam bana acil dönermisiniz ? Özel bağlantı yapmıştım bağlantım ilk kuruluşum da http://www.siteadi.com/%postname% böyle tanımladı google sonrasında bir yazı okudum lanet olsun nereden okudum o yazıyı http://www.siteadi.com/%postname% .html döndüm seo adına güzel vs vs demiş evet işlemlerimde faydasını gördüm fakat sonrasında her şey sitedeki 404 hatası almaya başladı ve böyle giderse google benim 16 site adresim için indeks silecek
    bunları düzeltildi olarak iletmem gerekiyor web master tools kısıtlı zamanım kaldı.

    şimdi 404 hatası aldığımdan dolayı siteleri eski haline çevirdim. http://www.siteadi.com/%postname% yaptım özel bağlantı modeline geçtim fakat gene ne yapacağım hakkında bilgi sahibi değilim ? yani nasıl bir kod koymam gerekiyor htaccess dosyasına ? 301 yönlendirmesi için ?

  6. tufan aydın   •  

    Yada hocam sizin gösterdiğiniz yönelgeye mi dönüş yapsam daha faydalı olur ? Yazı ismine dönsem sonrasında htaccess dosyasına verdiğiniz 301 yönlendirmesini mi yapsam ?
    kafam lastik gibi yemin ederim lütfen acil yardım edermisiniz ?

  7. tufan aydın   •  

    Yada özel bağlantıya döndüm http://www.siteadi.com/%postname% bu eklentiyi indirsem Permalinks Migration sitemin en son ki bağlantısını alıyor ve tanımlıyor çözümlenir diye okudum okumadığım blog sayfası kalmadı 17 saattir yemeden içmeden bu sorunu halletmeye bakıyorum

  8. tufan aydın   •  

    Ve hocam ben html yaptığımda da içeriklere 3g ile erişe biliyordum wifi ilede anlamadığım neden böyle bir 404 hatası verdi google botları tanımladığı ayarı bozduğumdan dolayı düşünmekteyim.
    Sitelerimde adam akıllı oturmadı sıralamalarda google üzerinde 650 indeks olmuş sitem var ama halen 1 tık almış değil neye uğradığımı şaşırdım

    • Hamit   •  

      .htaccess dosyasına bu kodu eklerseniz eski linkleriniz düzgün çalışacaktır.
      RedirectMatch 301 ^/([^/]+).html$ http://www.siteadi.com/$1

  9. Web Tasarımcı   •  

    WordPress Kullanıcı Müşterilerimizin Genelde Sık Karşılaştıkları Hata Kalıcı Bağlantılar İle Oynayıp Sonrası 404 hatalar ile Karşılaşıp Bizlere Geri Dönmeleri Sitemiz Açılmıyor 🙂 Gerçekten Bu Konuda Açıklayıcı Bir Yazı Paylaşmışşınız..Bilmeyenler İçin Güzel ve Açıklayıcı Olmuş Emeğinize Sağlık..

  10. harikasin   •  

    tskler

  11. karub   •  

    Merhaba,

    Web site adresinin son kısmında hep bu şekilde bir yazı ekleniyor.Hangi sayafaya tıklanırsa tıklansın hep o ( ?v=70c26b93370c ) yazısı çıkıyor.

    http://www.siteadı.com/?v=70c26b93370c

    Bunu nasıl düzeltebilirim?

  12. koral kahraman   •  

    bu konuyla ilgili iletişim bölümünden mesaj attım acil geri dönüş yaparsanız sevinirim. 🙂

Bir Cevap Yazın

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