www.emiertips.info Tips Blog | Games Anak | Software Cara Membuat Tampilan Daftar Penulis dengan Pagination | Tips Cakemier
Subscribe:

Cara Membuat Tampilan Daftar Penulis dengan Pagination

Tag Template adalah cara sederhana untuk query informasi dari database dan menampilkannya di sisi depan website Anda. Sebagai contoh, kita bisa menampilkan nama penulis posting dengan menggunakan the_author ( ), dan menggunakan the_title ( ), untuk menampilkan posting atau judul halaman.

Tag template WordPress yang cukup luas memungkinkan kita untuk sepenuhnya menyesuaikan website tanpa perlu plugin pihak ketiga. Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana membuat halaman kustom yang menampilkan daftar pengguna yang menggunakan satu set tag template.

Selain itu, kami juga akan menerapkan pagination untuk menampilkan para pengguna dalam jumlah halaman. Seperti halaman yang mungkin diperlukan untuk situs web tertentu.



Pertama, membuat file PHP baru di direktori tema yang Anda aktifkan. Dalam contoh ini, menggunakan tema TwentyTwelve. Tambahkan tag komentar berikut untuk mendaftar sebagai template halaman . lihat plaincopy ke clipboardprint?

    <?php 
    /* 
    Template Name: User Page 
    */ 

Dalam editor halaman WordPress , mengaturnya sebagai template untuk halaman penulis Anda.
Perhatikan bahwa Anda tidak harus memberi nama file sebagai author.php seperti yang telah disediakan oleh WordPress untuk menampilkan arsip posting penulis.

Query dan Formula

Mari kita atur formula. Buka template baru kita buat dalam editor kode.

Pertama, kita perlu menentukan jumlah pengguna yang ingin kita tunjukkan per halaman. Kita menetapkan nomor ini dalam sebuah variabel bernama $number. Setiap kali Anda ingin mengubah jumlah pengguna yang ditampilkan pada halaman,ubah nilai dalam variabel ini. lihat plaincopy ke clipboardprint?

    $number = 10; 

Tambahkan potongan kode berikut untuk menentukan nomor pagination saat ini.
    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; 

Kemudian, dengan menggunakan kode berikut, kita menghitung jumlah pengguna yang harus melewati di halaman (offset) - ini akan berlaku pada halaman kedua dan seterusnya. lihat plaincopy ke clipboardprint?

    $offset = ($paged - 1) * $number; 

Kita perlu untuk mendapatkan pengguna yang terdaftar di website kita, dan menghitung jumlah menggunakan hitungan PHP ( ) fungsi, sebagai berikut. lihat plaincopy ke clipboardprint ?

    $users = get_users(); 
    $total_users = count($users); 

Kita juga menghitung jumlah total tanya pengguna per spesifikasi, yang meliputi jumlah pengguna yang akan ditampilkan, dan nomor offset. lihat plaincopy ke clipboardprint ?

    $query = get_users('&offset='.$offset.'&number='.$number); 

Kemudian, kita menghitung jumlah halaman yang harus dibuat. Kita bisa menghitungnya berdasarkan jumlah pengguna yang terdaftar dan jumlah pengguna yang ditampilkan per halaman, sebagai berikut. lihat plaincopy ke clipboardprint ?

    $total_pages = intval($total_users / $number) + 1; 


Menampilkan User

Seperti yang telah kita tentukan rumus yang diperlukan, sekarang kita akan menampilkan hasil pada halaman.

Dalam contoh ini, kita akan menampilkan beberapa hal dari pengguna: avatar, nama lengkap, dan biografi singkat (deskripsi). Informasi tersebut dapat diambil masing-masing menggunakan tag template berikut: get_avatar, dan get_the_author_meta lihat plaincopy ke clipboardprint ?

    echo '<ul id="users">'; 
    foreach($query as $q) { ?> 
                     
        <li class="user clearfix"> 
            <div class="user-avatar"> 
                <?php echo get_avatar( $q->ID, 80 ); ?>     
            </div> 
            <div class="user-data"> 
     
                <h4 class="user-name"> 
                    <a href="<?php echo get_author_posts_url($q->ID);?>"> 
                        <?php echo get_the_author_meta('display_name', $q->ID);?> 
                    </a> 
                </h4> 
     
                <?php if (get_the_author_meta('description', $q->ID) != '') : ?> 
                    <p><?php echo get_the_author_meta('description', $q->ID); ?></p> 
                <?php endif; ?> 
     
            </div> 
        </li> 
     
    <?php }  
    echo '</ul>'; 


Membuat Pagination

Tentu saja kita tidak ingin menampilkan ratusan pengguna dalam satu halaman. Jadi, kita akan membuat link pagination dan membagi hasil dalam beberapa halaman. Selain itu, kita hanya akan menampilkan pagination jika jumlah total pengguna yang terdaftar lebih besar dari pengguna yang ditampilkan per halaman.

Untungnya, WordPress memiliki tag template yang memungkinkan kita untuk membuat pagination dengan mudah, yang disebut paginate_links ( ). lihat plaincopy ke clipboardprint ?

    <?php 
        if ($total_users > $total_query) { 
            echo '<div id="pagination" class="clearfix">'; 
            echo '<span class="pages">Pages:</span>'; 
              $current_page = max(1, get_query_var('paged')); 
              echo paginate_links(array( 
                    'base' => get_pagenum_link(1) . '%_%', 
                    'format' => 'page/%#%/', 
                    'current' => $current_page, 
                    'total' => $total_pages 
                    'prev_next'    => false, 
                    'type'         => 'list', 
                )); 
            echo '</div>'; 
        } 
    ?> 


Semua Code

Untuk jalan pintas, berikut ini adalah semua kode yang dapat Anda copy dan paste ke dalam template halaman Anda. lihat plaincopy ke clipboardprint ?

    <?php  
    $number     = 10; 
    $paged      = (get_query_var('paged')) ? get_query_var('paged') : 1; 
    $offset     = ($paged - 1) * $number; 
    $users      = get_users(); 
    $query      = get_users('&offset='.$offset.'&number='.$number); 
    $total_users = count($users); 
    $total_query = count($query); 
    $total_pages = intval($total_users / $number) + 1; 
     
    echo '<ul id="users">'; 
     
    foreach($query as $q) { ?> 
         
        <li class="user clearfix"> 
            <div class="user-avatar"> 
                <?php echo get_avatar( $q->ID, 80 ); ?>     
            </div> 
            <div class="user-data"> 
     
                <h4 class="user-name"> 
                    <a href="<?php echo get_author_posts_url($q->ID);?>"> 
                        <?php echo get_the_author_meta('display_name', $q->ID);?> 
                    </a> 
                </h4> 
     
                <?php if (get_the_author_meta('description', $q->ID) != '') : ?> 
                    <p><?php echo get_the_author_meta('description', $q->ID); ?></p> 
                <?php endif; ?> 
     
            </div> 
        </li> 
     
    <?php }  
     
    echo '</ul>'; 
     
    ?> 
     
    <?php 
    if ($total_users > $total_query) { 
    echo '<div id="pagination" class="clearfix">'; 
    echo '<span class="pages">Pages:</span>'; 
      $current_page = max(1, get_query_var('paged')); 
      echo paginate_links(array( 
            'base' => get_pagenum_link(1) . '%_%', 
            'format' => 'page/%#%/', 
            'current' => $current_page, 
            'total' => $total_pages, 
            'prev_next'    => false, 
            'type'         => 'list', 
        )); 
    echo '</div>'; 
    ?> 

Dengan beberapa tweak dalam CSS, Anda dapat membuat halaman terlihat jauh lebih baik.
Tips dari hongkiat.com
Cara Membuat Tampilan Daftar Penulis dengan Pagination

masukkan email anda: