WordPress Bakım Modu Sayfası Kod Kullanımı
Önceki Makale
- Anasayfa
- Gerekli Kodlar
- WordPress Kategori Sayfasında Pagination ( Sayfalama ) Yapımı
WordPress Kategori Sayfasında Pagination ( Sayfalama ) Yapımı
Savaş Dersim Çelik
|
Pazar Mart 31st, 2019
|
Yorum Yok
|
1.755 Görüntülenme
|
0 Like
WordPress tabanlı siteler bir çok şeyi eklentiler ile yapabiliyoruz fakat biliyorsunuz ki gereksiz eklenti kullanımı sitemizi biraz daha yormaktadır o yüzden kod ile yapabileceğimiz şeyleri eklenti ile yapmazsak bizim için daha sağlıklı olacaktır.
Pagination ( Sayfalama ) sistemi sitemizde yüzlerce içeriği tek bir sayfada göstermeden sayfalama mantığı ile her sayfaya belirlediğimiz miktarda içerik yerleştirerek gösterebileceğimiz yöntemdir.
Bu konumuzda category.php sayfalarında Pagination ( Sayfalama ) sistemi yapımından bahsedeceğiz.
İlk olarak category.php sayfamızda içerikleri listelemek için aşağıdaki kullanabiliriz tabi kendi geliştirdiğiniz bir kod varsa onuda kullanabilirsiniz.
<?php $currCat = get_category(get_query_var('cat')); $cat_name = $currCat->name; $cat_id = get_cat_ID( $cat_name ); $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $wp_query = new WP_Query('showposts=10&post_type=post&paged='.$paged.'&cat='.$cat_id); while ($wp_query->have_posts()) : $wp_query->the_post(); ?> /* Bu alanda içeriklerimiz yer alacak */ <?php endwhile; wp_reset_postdata(); ?>
Kategori sayfamızı tasarladığımızı düşünüyorum ve artık sayfalama sistemine ihtiyacımız var.
Aşağıdaki kodu temanızda yer alan functions.php dosyasına yerleştirin.
function sdc_pagination() { ob_start(); ?> <div class="pages clearfix"> <?php global $wp_query; $current = max( 1, absint( get_query_var( 'paged' ) ) ); $pagination = paginate_links( array( 'base' => str_replace( PHP_INT_MAX, '%#%', esc_url( get_pagenum_link( PHP_INT_MAX ) ) ), 'format' => '?paged=%#%', 'current' => $current, 'total' => $wp_query->max_num_pages, 'type' => 'array', 'prev_text' => '«', 'next_text' => '»', ) ); ?> <?php if ( ! empty( $pagination ) ) : ?> /* Buraya kendi pagination başlangıç kodunuzu yazın */ <ul class="pagination"> <?php foreach ( $pagination as $key => $page_link ) : ?> /* Buraya kendi paginationda tekrar eden kodunuzu yazın */ <li class="paginated_link<?php if ( strpos( $page_link, 'current' ) !== false ) { echo ' active'; } ?>"><?php echo $page_link ?></li> <?php endforeach ?> </ul> /* Buraya kendi pagination bitiş kodunuzu yazın */ <?php endif ?> </div> <?php $links = ob_get_clean(); return apply_filters( 'sdc_pagination', $links ); }
Örnek olarak aşağıdaki gibi kullanabilirsiniz.
<?php echo sdc_pagination(); ?>
Örnek görüntüsüne aşağıdaki resime bakabilirsiniz.
-
-
PHP ile Resimdeki Renkleri ve Kodlarını Çıkartma Sonraki Makale
Konu İle İlgili Soru, Görüş ve Öneriler