Phân trang trong wordpress

Thêm phân trang trong WordPress rất dễ dàng bằng cách chỉ cần thêm các nút tiếp theo và trước đó bằng cách sử dụng phân trang WordPress nhưng làm thế nào chúng ta có thể thêm phân trang số trong vòng lặp?

Đầu tiên chúng ta cần tạo một hàm để phân trang số tùy chỉnh bên trong một vòng lặp thông thường. Hàm này có biến toàn cục và biến wp_query. Ngoài ra, chúng tôi sẽ sử dụng chức năng paginate_links trong WordPress


function hdev_custom_numeric_pagination( $number_pages = '', $page_range = '', $paged = '') {
  if (empty($page_range)) {
    $page_range = 2;
  }

  global $paged;
    if (empty($paged)) {
    $paged = 1;
  }

  if ($number_pages == '') {
    global $wp_query;
    $number_pages = $wp_query->max_num_pages;
    if (!$number_pages) {
      $number_pages = 1;
    }
  }

  $pagination_args = array(
    'base' => get_pagenum_link(1) . '%_%',
    'format' => 'page/%#%',
    'total' => $number_pages,
    'current' => $paged,
    'show_all' => false,
    'end_size' => 1,
    'mid_size' => $page_range,
    'prev_next' => true,
    'prev_text' => __('«'),
    'next_text' => __('»'),
    'type' => 'plain',
    'add_args' => false,
    'add_fragment' => ''
  );
  $paginate_links  = paginate_links($pagination_args);
  
  if ($paginate_links) {
    echo '<div class="hdev-pagination-wrap">';
    echo "<nav class='hdev-custom-pagination'>";
    echo "<span class='page-numbers page-num'>Page " . $paged . " of " . $number_pages . "</span> ";
    echo $paginate_links;
    echo "</nav>";
    echo '</div>';
  }
}

Bạn có thể thêm function vào 1 look

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array(
  'post_type'   => 'post',
  'posts_per_page'  => 8,
  'paged' => $paged,
  'order' => 'DESC', 
  'orderby' => 'date'
);
$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) :
while ( $the_query->have_posts() ) : $the_query->the_post();
  echo get_the_title().'<br />';
endwhile;
hdev_custom_numeric_pagination($the_query->max_num_pages, "", $paged);
endif;
wp_reset_postdata();

Nếu bài viết hữu ích hãy đánh giá bài viết:

DỊCH VỤ TUỆ LÂM SOFT ĐANG CUNG CẤP

THIẾT KẾ WEBSITE

Tuệ Lâm Soft Cung cấp giải pháp thiết kế website theo yêu cầu, thiết kế website trọn gói theo mẫu giá rẻ, nhiều mẫu giao diện đẹp, khả năng tùy biến cao, tối ưu hóa Onpage.

PHÒNG MARKETING THUÊ NGOÀI

Phòng Marketing Thuê Ngoài Tuệ Lâm Soft giúp doanh nghiệp làm Marketing bài bản. Tối ưu chi phí vận hành, tối đa hiệu quả công việc. Cam kết hiệu quả. Đội ngũ kinh nghiệm

THIẾT KẾ LOGO THƯƠNG HIỆU

Đội ngũ trẻ thiết kế logo nhận diện thương hiệu trẻ trung, sáng tạo, ấn tượng. Dịch vụ uy tín hàng đầu. Giá rẻ, tư vấn chuẩn xác. Quy trình bài bản. Đội ngũ nhiệt tình.

QUẢNG CÁO GOOGLE ADWORD

Tư vấn từ khóa hiệu quả, nhắm đúng khách hàng mục tiêu, theo dõi đấu giá từ khóa, tăng điểm chất lượng quảng cáo Google tối ưu chi phí tốt nhất.

DỊCH VỤ SEO

Dịch vụ SEO website chuyên nghiệp bền vững, gia tăng sự nhận diện thương hiệu của doanh nghiệp trên internet, tối đa hóa lợi nhuận với chi phí tối ưu nhất

EMAIL DOANH NGHIỆP

Email Doanh Nghiệp Mua 1 Lần Dùng Vĩnh Viễn‎ - Hệ thống Email theo tên miền góp phần gây dựng nên hình ảnh chuyên nghiệp nâng cao uy tín - khẳng định thương hiệu cho công ty bạn.