Wordpress yeni sayfa ve url yapisi ekleme (add_rewrite_tag & add_rewrite_rule) 3

WordPress de yeni bir sayfa olusturmak istediginizde ve bu sayfaya seo (rewrite) ozelligi kazandirmaniz gerekebilir. Boyle durumlarda wordpress admin paneli yetersiz kaliyor, islerimizi fonksiyon yazarak yerine getirmemiz gerekebiliyor. Bu konuda degisken parametreleri kullanarak farkli url yapilari olusturmayi anlatacagim.

Ornek senaryo

Temaniza yeni bir sayfa eklediniz ve bu sayfayi kullanarak adres satirindaki degisken bilgileri alip veritabaninizda kontrol ettirip sayfaya yazacaksiniz.

Baslarken

Ornek sayfa olusturalim ve icerigini asagidaki sekilde yapalim. Bu dosyayi kullandiginiz tema dosyasinin icinde page-kuaza-ornek-sayfa.php ismiyle olusturun.

Sonrasinda admine girelim ve sayfa ekle kismini acalim. Baslik ve icerik girebilirsiniz, cok onemli degil bu kisim ama asagida resimde goreceginiz bolumde kuaza-ornek-sayfa kismini secmeniz gerekli.

kuaza-ornek-sayfa

Ve yayinlayin, Sonrasinda adres satiri bu sekilde olacak: wp-admin/post.php?post=16&action=edit&message=6 kirmizi kismi aklinizda tutun cunku fonksiyon dosyasina ekleyecegimiz fonksiyonlarimizda kullanacagiz.

Fonksiyonlarimiz

Burda bize iki fonksiyon gerekecek. Birisi get parametresini tanitma (sayfada kullanabilmemiz icin), digeride url yapisini olusturmak. Url yapisi sitenizdeki konularin linkleri anlamindadir, buda amacimiz farkli bir sayfa olusturmak ve buna farkli bir url yapisi vermek.

Asagidaki kodlari temanizin icerisinde bulunan functions.php dosyasini acarak en altina ekleyin (php taglari arasina)

Yukaridaki fonksiyonlarimizda goreceginiz page_id=16 kismi var. Budaki 16 kismini sizin olusturdugunuz sayfanin ID si ile degistirin, Ve kaydedin.

Son adim

Geriye islemin en can alici kismi kaliyor. Bunu yapmadiginizda ilginc problemlerle karsilasabilir, neden oluyor bu diye isyanda bulunabilirsiniz ki bende oyle oldu :).

Admin panelden Kalıcı Bağlantı Ayarları kismini acin: /wp-admin/options-permalink.php ve ayarlarinizi kaydedin, bu kadar. Burda onemli olan URL Rewrite yapisini kullanmiyorsaniz, burdaki islemdeki seo link kismi calismayacak, default yapi calisacaktir.

Ve yeni sayfamiz olusturuldu. Ornek bu sayfayi actiginizda olusturdugumuz sayfa karsimiza cikacak:

 Ornek resim:

kuaza ornek sayfa

Bu sekilde farkli sayfalar olusturabilirsiniz arkadaslar. Degisken kisimlarini degistirerekde ayni sayfaya ulasarak cektiginiz GET degiskenindeki ile veritabani islemleri yapabilirsiniz. Ben sayfayi olusturdum, bundan sonra yapacaginiz islemleri ornek sayfa kismindan yurutebilirsiniz.

Default sayfa dosyasinda header ve footer fonksiyonlarini include etmedim. Siz kullanim seklinize gore ekleyebilir yada iptal edebilirsiniz.

Bir Cevap Yazın