WordPress eklentileri ile yönetici panelinde sayfalama

WordPress yazı listelerinin sayfalanmasını elbette birçok eklenti ile hallediyoruz. Ancak bu eklentiler sadece kullanıcı ara yüzündeki içeriği listelemek için. Peki yönetici panelindeki sayfalama işlemlerini nasıl halledeceksiniz? Diyelim ki bir eklenti hazırladınız ve sayfalarca içerik listelenecek. Nasıl olacak peki bu sayfalama olayı?

WordPress eklentileri ile yönetici panelinde sayfalama

WordPress eklentinizi kodladınız ve her şey çok güzel gidiyor. Ancak içerik listenizi sayfalamanız gerekiyor, ve nasıl yapacağınızı bilmiyorsunuz 🙂 Aslında basit, çünkü WordPress yönetici paneli için zaten bir sayfalama fonksiyonu yer alıyor. Böylece eklentileriniz ile hazırladığınız özel sorgularınızda, rahatlıkla sayfalama ekranları oluşturabilirsiniz.

Bu işlem zaten hazırda bulunan paginate_links fonksiyonu ile rahatlıkla yapılabiliyor. Hatta temanız üzerindeki sayfalamaları da bu fonksiyon ile rahatlıkla yapabiliyorsunuz.

Örnek bir kullanım

Örnek bir kodlama yaptım. Üzerinde anlatacağım 😉


id .'&showposts=10&orderby=date&order=DESC&paged='.$istek_sayfa);

$page_links = paginate_links( array(
'base' => add_query_arg( 'paged', '%#%' ),
'format' => '',
'prev_text' => __('«'),
'next_text' => __('»'),
'total' => $reklamlar->max_num_pages,
'current' => $istek_sayfa
));

if ( $page_links ) { ?>

' . __( 'Displaying %s–%s of %s' ) . '%s',
number_format_i18n( ($istek_sayfa- 1 ) * $reklamlar->query_vars['posts_per_page'] + 1 ),
number_format_i18n( min( $istek_sayfa * $reklamlar->query_vars['posts_per_page'], $reklamlar->found_posts ) ),
number_format_i18n( $reklamlar->found_posts ),
$page_links
); echo $page_links_text; ?>

Görüldüğü gibi gayet basit aslında 🙂 WP_Query ile özel sorgumu yazdım ve içerisinde sayfalamayı tanımladım.

Ardından paginate_links ile sayfa numaralarını oluşturdum ve sonrasındaki satırlarda bunları ekrana çıktı verdim. Aradaki fazlalık olarak görünen kodlar dil çevirileri için. Korkacak bir şey yok yani 😉