Eklentisiz Sayfalama Özelliği Ekleme

eklentisiz sayfalama koduWordPress temalarımızı geliştirmek amacı ile bu kategorideki ilk anlatımımızı Eklentisiz Sayfalama (Pagenavi) Özelliği Ekleme konusunu ele almak istedik.Bir çok wordpress tema sever bloglarına yada sitelerine önce wp-pagenavi eklentisi kurmakta.Eklentiler sitelerimizi fazlası ile yavaşlattığından dolayı eğer elimizden geliyorsa eklentileri az ve öz kullanmalıyız.
Sayfalama eklentileri her ne kadar sitelerimizi yavaşlatmasada kod ile çözülebilecekken neden kullanalım değil mi? Yapacağımız işlemler çok basit olmakla birlikte adımlara harfiyen uyarak sizde wordpress temanıza bu özelliği eklenti olmadan kazandırabilirsiniz.

Yapılacak İşlemler

Tema klasörünün içerisindeki functions.php dosyasını kod editörü programımızla açıp şunları ekliyoruz,

?>

Kodundan hemen önce

function kt_sayfa($pages = '', $range = 2)
{
     $showitems = ($range * 2)+1; 
 
     global $paged;
     if(empty($paged)) $paged = 1;
 
     if($pages == '')
     {
         global $wp_query;
         $pages = $wp_query->max_num_pages;
         if(!$pages)
         {
             $pages = 1;
         }
     }  
 
     if(1 != $pages)
     {
         if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>&laquo;</a>";
         if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'>&lsaquo;</a>";
 
         for ($i=1; $i <= $pages; $i++)
         {
             if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems ))
             {
                 echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";
             }
         }
 
         if ($paged < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($paged + 1)."'>&rsaquo;</a>";
         if ($paged < $pages-1 &&  $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>&raquo;</a>";
     }
}

Kodlarını ekleyip kaydediyoruz.Ardından temamızın style şablonunu açıp (genelde style.css adındadır) en alta şu kodları ekliyoruz,

/* Sayfalama */
.sayfalama{width:100%;margin:10px 0;padding:5px;text-align:center;font-size:16px;}
.sayfalama a, .sayfalama span{padding:10px;margin-right:1px;color:#082e70;}
.sayfalama a:hover, .sayfalama span.current{background:#f5f5f5;color:#b20000;border:2px solid #e0dfdf;}
.sayfalama span.current{font-weight:bold;}

Son olarak sayfalama yapılacak dosyalara şu kodu ekliyoruz,

<div class="sayfalama">
<?php echo kt_sayfa(); ?>
</div>

Sayfalama yapılanlar genelde index.php, archive.php ve search.php dosyalarıdır.Temadan temaya değişebileceğinide belirtmekte fayda var.

Umarım en basit kullanıcının bile yapabileceği şekilde anlatmışımdır.Güle güle kullanın.

Sosyal Medyada Paylaş Facebook Twitter Google+
Wordpress Geliştirme33 Yorum27.424
Etiketler: , ,

Eklentisiz Sayfalama Özelliği Ekleme (33 Yorum)

Yorum Yaz

  1. Merhaba Fatih bey vermiş olduğunuz kodları söylediğiniz gibi temaya ekledim adım adım yalnız bir sorun çıktı beyaz ekran hatası verdi beyaz ekran hatasını çözdüm fakat kodları kaldırmak zorunda kaldım bunun başka yolu yok mu ne yapmalıyım.

    • Merhaba Mahmut bey,
      Beyaz ekran hatasını görmek için wp-config.php dosyasında debug kısmını bulun ve false değerini true yapıp tekrar bakın hata kodlarını göreceksiniz.Bu kodları mail olarak gönderirseniz yardımcı olabilirim.

  2. Fatih bey acilen ihtiyacım var uyguladım ama beceremedim sanırım temamda Older Entr.. şeklinde çıkıyor hani önceki yazılar sonraki yazılar şeklinde ben o şekilde çıkmasını istemiyorum da rakamlar halinde çıkmasını istiyorum bi göz atarmısınız nerde yanlışlık yapıyorum sayfa beyaz sayfaya düşüyor o yüzden eklentiyi kaldırdım biryerde çakışmamı var acaba ? Uyguladığım site : ****.com sadece üst kısımda yapmak istiyorum

    • Can bey kod bilginiz yoksa pagenavi eklentisini kullanmanızı tavsiye ederim.Beyaz sayfa hatası muhtemelen kodları eklerken bir yanlışınızdan dolayı kaynaklanıyor.

  3. teşekkür ederim kardeşim. bir temamda sunucuyu yoran pagenavi eklentisinden de kurtulmuş oldum böylelikle 😉

  4. Merhaba fatih bey rica etmsem sayfalamayı ws-köydernek temasına entegre edebilir misiniz.Tema download adresi:** Şimdiden ilgi ve alakanızdan dolayı teşekkür ediyorum çalışmalarınızda başarılar dilerim.

  5. Merhaba,
    Dediklerinizi aynen uyguladım sayfa numaralar çıktı makalelerin sonunda 1,2 şeklinde 2 sayfaya tıkladığımda site http://site.com/page/2 olarak adres satırında gözüküyor ama malesef 1 sayfadaki makaleleri listeliyor.Toplam 12 yazı var sayfa birde ve ikide yeniden o 12 yazıyı listeliyor.Yardımcı olabilir misiniz.
    Selametle..

    • Mert bey muhtemelen kodu eklediğiniz index.php,archive.php vs. bunlarda sayfalamayı bozan kodlar mevcut olabilir.WPLog temasını incelemenizi öneririm.

  6. Hocam bunu herkes yazmış. Google’ı alt üst ettim girmediğim site kalmadı biride çıkıp yorumları eklentisiz nasıl sayfalara böleriz anlatmamış doğru düzgün bir cevap bulamadım yorumları nasıl sayfalarım onu bir söyleseniz:)

    • Eğer temanız destekliyorsa wp adminden Ayarlar -> Tartışma -> Diğer yorum ayarları kısmına gelin ve her sayfada x üst seviye yorum olacak şekilde.. yazan kısmı ayarlarsanız sayfalama yapacaktır.

      • Fatih bey cevap için teşekkürler fakat onu biliyorum temam desteklemiyor kodlarla yapmam lazım o yüzden size sormuştum. Eklentiler yorum sayfasınıda değiştiriyor çoğu adam gibi çalışmıyor:( temaya bu yorum sayfalama yı nasıl eklerim bilğiniz varsa kodlarla gösterseniz eminim bir çok kişininde işine yarıcaktır.

  7. merhaba cyberdizayn.com uyguladım yazdıklarınızı ama şöyle bir problemim var diyelimki ikinci sayfayı acmak için tıklıyorum adres cubugunda page/2 yazıyor ama içerikler degişmiyor. sorun nedir? yardımcı olurmusunuz?

    • index.php dosyanızda doğru yere yerleştirmemiş olabilirsiniz kodu.Tam olarak endif kodundan sonra koymalısınız.

      • aynı sorun devam ediyor hocam .. temayı kendim hazırlıyorum ..
        sadece index,page,single,comments, sayfaları var arcive php fln olması gerekirmi sayfalamanın calısması için demek istedigim sizin konudaki anlatımınızı en ufak detayına kadar uyguladım ama hala sorun devam ediyor.. acaba arcive.php catagory.php olmadıgından mı boyle bir sorunla karşılaşıyorum..

  8. @Hakan bey ve @Servet bey,
    Uyardığınız için teşekkür ederim.Fakat normal konuda o kısımda bir tekrar yokken sayfada böyle bir tekrar oluşmuş.”view plain” kısmına tıkladığınızda yine doğru şekilde görüntüleniyor.

    Kodları eğer direk sayfadan kopyalayan arkadaşlar olur ise lütfen yorumları okuyunuz. 🙂

  9. Teşekkürler hocam wp için tema yapıyordum, sayenizde sayfalama işini de hızlıca çözmüş oldum. Yalnız function sayfasına eklenecek olan kodun 6. satırında şu kısım “if(emptyempty($paged)) $paged = 1;” Şöyle olmalı “if(empty($paged)) $paged = 1; ” 😉

  10. hocam functions.php kodları içinde 6. satırda şu alanı ;

    [php] if(emptyempty($paged)) $paged = 1; [/php]

    şununla değiştirmen gerekiyor 🙂

    [php] if(empty($paged)) $paged = 1; [/php]

    if içindeki empty i iki kez yazmışsın 🙂

  11. Merhaba,
    Benim bu konuda bir sorunum var.
    Anasayfada sabit olarak tuttuğum 11 sayfa var ve ben okuma ayarları kısmından en fazla gösterilecek blog adedini 3 olarak ayarladım. Böylece toplamda anasayfada 14 yazım görülüyor ve bu da sağ sütunun bittiği kısma denk geliyor. Ana sayfa için güzel bir görünüm elde etmiş oluyorum ancak ikinci ve diğer sayfalara geçildiğinde sabit 11 yazı anasayfada kaldığı için sadece 3’erli olarak görülüyor diğer sayfalar. Nasıl bir ayar yapmalıyım ki anasayfada yazı adedini artırmadan diğer sayfalarda artırabileyim ? Yardımcı olabilir misiniz ?

    • Ersin bey çözüm olarak archive.php dosyasına ya sabît sayfalarınızı ekleyeceksiniz yada yazı sayısını 11 yapıp, anasayfaya özel bir şablon hazırlayıp query_post ile sabit sayfalar+son 3 yazıyı çekeceksiniz.

  12. Hay Allah razı olsun sizden, benzer kodlardan en az 10 tane denedim ama sadece sizinki çalıştı. emeğinize sağlık… Eklentisiz şekilde konuda bulunan kodlarla yapılmış sayfalandırma örneği; http://aaliyah.quotess.net/

    Mutlu yıllar 😉

Yorum/Değerlendirmenizi yazın


Ücretsiz Temalar
Sizler için geliştirdiğimiz aynı kalitede ücretsiz temalarımıza buradan ulaşabilirsiniz.
Videolu Dersler
Wordpress ile alakalı videolu anlatımlara buradan ulaşabilirsiniz.
Wordpress Geliştirme
Wordpress temalarınızda kullanabilieceğiniz bir takım kodları buradan ulaşabilirsiniz.