make pagination wordpress admin panel

To add pagination to the WordPress admin panel, you can follow these steps:

Step 1: Open your WordPress theme's functions.php file. Step 2: Locate the function that creates the admin panel menu. Step 3: Inside that function, add the following code to enqueue the necessary scripts and styles for pagination:

function enqueue_admin_pagination_scripts() {
  wp_enqueue_style('admin-pagination', get_template_directory_uri() . '/css/admin-pagination.css');
  wp_enqueue_script('admin-pagination', get_template_directory_uri() . '/js/admin-pagination.js', array('jquery'));
}
add_action('admin_enqueue_scripts', 'enqueue_admin_pagination_scripts');

Step 4: Create the CSS file (admin-pagination.css) and add the following styles to customize the pagination look:

.admin-pagination {
  margin-top: 20px;
}
.admin-pagination .pagination {
  display: flex;
  justify-content: center;
  list-style: none;
}
.admin-pagination .pagination li {
  margin: 0 5px;
}
.admin-pagination .pagination li a {
  padding: 5px 10px;
  border: 1px solid #ccc;
  text-decoration: none;
  color: #333;
}
.admin-pagination .pagination li a:hover {
  background-color: #ccc;
}
.admin-pagination .pagination .current-page {
  font-weight: bold;
  color: #000;
}

Step 5: Create the JavaScript file (admin-pagination.js) and add the following code to handle the pagination functionality:

jQuery(document).ready(function($) {
  $('.admin-pagination .pagination a').on('click', function(e) {
    e.preventDefault();

    var page = $(this).attr('href');
    var data = {
      action: 'admin_pagination',
      page: page
    };

    $.post(ajaxurl, data, function(response) {
      $('.admin-pagination .pagination').replaceWith(response);
    });
  });
});

Step 6: In your theme's functions.php file, add the following code to handle the AJAX request and generate the pagination HTML:

function admin_pagination_callback() {
  // Pagination logic goes here

  // Generate the pagination HTML
  $pagination_html = '<ul class="pagination">';
  // Add your pagination links here
  $pagination_html .= '</ul>';

  echo $pagination_html;
  wp_die();
}
add_action('wp_ajax_admin_pagination', 'admin_pagination_callback');
add_action('wp_ajax_nopriv_admin_pagination', 'admin_pagination_callback');

That's it! With these steps, you have added pagination to the WordPress admin panel. Make sure to customize the pagination logic in the admin_pagination_callback function to suit your needs.