Code phân trang không cần plugin cho wordpress

Cập nhật lần cuối 03/08/2017 by trong WordPress vào 13/10/2013 có 9598 Views

Hôm nay mình xin được chia sẻ code phần trang cho wordpress không cần plugin.

Code phân trang

Code phân trang

Đầu tiên các bạn cho đoạn code này vào file functions.php:

//Code phan trang
function devvn_wp_corenavi($custom_query = null, $paged = null) {
    global $wp_query;
    if($custom_query) $main_query = $custom_query;
    else $main_query = $wp_query;
    $paged = ($paged) ? $paged : get_query_var('paged');
    $big = 999999999;
    $total = isset($main_query->max_num_pages)?$main_query->max_num_pages:'';
    if($total > 1) echo '<div class="pagenavi">';
    echo paginate_links( array(
        'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
        'format' => '?paged=%#%',
        'current' => max( 1, $paged ),
        'total' => $total,
        'mid_size' => '10', // Số trang hiển thị khi có nhiều trang trước khi hiển thị ...
        'prev_text'    => __('Prev','devvn'),
        'next_text'    => __('Next','devvn'),
    ) );
    if($total > 1) echo '</div>';
}

Rồi sau đó các bạn cho đoạn code này vào chỗ bạn muốn hiển thị phân trang:

Để duy trì blog nên mình có làm aff cho 1 số bên hosting. Nhưng dù aff mình cũng chọn 1 số nhà cung cấp uy tín về chất lượng và support nên các bạn cứ yên tâm nhé.

Nếu có mua hosting mà có trong list dưới đây các bạn click vào link trước khi mua để ủng hộ mình nhé. Mình cảm ơn nhiều

<?php if (function_exists('devvn_wp_corenavi')) devvn_wp_corenavi(); ?>

Chú ý: Nếu muốn phân trang tại custom wp_query thì chúng ta chèn code phân trang như sau:

$news = new WP_Query($args);
if($news->have_posts()):
    while ($news->have_posts()):$news->the_post();
        //nội dùng hiển thị
    endwhile;
    //code phân trang
    if (function_exists('devvn_wp_corenavi')) devvn_wp_corenavi($news);
endif; wp_reset_query();

Cuối cùng các bạn dùng css để định dạng nó theo ý mình thôi.

Còn mình cho css như hình trên. Các bạn có thể tham khảo:


/*------------------------------------------------*/

/*----------------[SinhVienLife]----------------*/

/*------------------------------------------------*/

.pagenavi{

margin: 20px 0 20px 0;

}

.pagenavi span,.pagenavi a{color: #4d4d4d;padding:3px;margin-right:5px;background:transparent;border:1px solid #757575}

.pagenavi a:hover,.pagenavi .current{background:transparent;color:#4d4d4d;text-decoration:none}

.pagenavi .page-numbers,.pagenavi .current{color: #4d4d4d;font-weight:bold}

.pagenavi .current{color: red;}

.pagenavi .page-numbers{border:1px solid #DDD;padding: 8px; border-radius: 8px;}

Xem thêm: http://codex.wordpress.org/Function_Reference/paginate_links

Chúc các bạn thành công!

 

5/5 - (5 votes)
  • Bình luận
Sản phẩm nổi bật của Toản
x