WordPress Eklenti Kullanmadan Sayfalama

Bir çok wordpress teması sayfalama özelliği ile birlikte geliyor. Bazı temalar ise sayfalar arasındaki geçişi Önceki yazılar ve Sonraki yazılar şeklinde bir sistemle sağlıyor. Bu şekilde bir navigasyon ziyaretçi açısından çok kullanışlı olmaz. Ziyaretçinin sitede daha rahat dolaşabilmesi için Sayfa 1 2 3 4 5 … şeklinde bir sistem çok daha kullanışlı olur. Bu işi yapan wordpress eklentileri bulunuyor. Ben eklentisiz halledebileceğiniz işler için eklenti kullanmamanız gerektiğini düşünüyorum. Eklentilerde uyum problemiyle karşılaşabilirsiniz ve sitenizin daha yavaş çalışmasına neden olabilir. Eğer kullandığınız temada bu özellik yoksa endişelenmeyin eklenti kullanmadan iki adımla bu özelliği temanıza ekleyebilirsiniz.

Öncelikle bir sayfada kaç adet yazı gösterileceğini WordPress menüsündeki Ayarlar > Okuma sayfasından ayarlayın.  En fazla gösterilecek blog sayfası adedi bölümüne istediğiniz sayıyı girin. Varsayılan olarak her sayfada 10 yazı gösterilir.

Temanızın functions.php dosyasına aşağıdaki kodu ekleyin.

if ( ! function_exists( 'post_pagination' ) ) :
   function post_pagination() {
     global $wp_query;
     $pager = 999999999; // need an unlikely integer
 
        echo paginate_links( array(
             'base' => str_replace( $pager, '%#%', esc_url( get_pagenum_link( $pager ) ) ),
             'format' => '?paged=%#%',
             'current' => max( 1, get_query_var('paged') ),
             'total' => $wp_query->max_num_pages
        ) );
   }
endif;

Ardından sayfalandırmayı göstermek istediğiniz bölümlere. (Bunlar genellikle index.php ve archive.php dir) aşağıdaki kodu eklemeniz yeterli

<?php post_pagination(); ?>

WordPress için eklenti kullanmadan sayfalama işlemi yapmak için gerçekleştirmeniz gereken işlemler bu kadar. Linkin görünümünü değiştirmek için style.css dosyasında değişiklik yapabilirsiniz. Örnek olması açısından aşağıdaki kodu style.css dosyanıza ekleyerek deneyebilirsiniz.

.page-numbers {
	font-size:17px;
	color:#333;
	padding:3px;
	border:1px solid #ccc;
	background:#f5f5f5;
}

Bir cevap yazın

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