разбиение на страницы данных с использованием SQL-запроса

Я новичок в php и word press. У меня вопрос, что я использую sql query в своих posts для получения данных из моей data base . Теперь проблема в том, что у меня есть огромные данные на моем post и у меня нет идеи о том, как применять pagination на pagination на данные, которые были получены с помощью SQL query . Вот код, который я использую в своем post .

 <?php global $wpdb; // QUERY HERE TO COUNT TOTAL RECORDS FOR PAGINATION $total = $wpdb->get_var("SELECT COUNT(distinct hadith_no, content) FROM muslim"); $post_per_page = 10; $page = isset( $_GET['cpage'] ) ? abs( (int) $_GET['cpage'] ) : 1; $offset = ( $page * $post_per_page ) - $post_per_page; // QUERY HERE TO GET OUR RESULTS $results = $wpdb->get_results("SELECT hadith_no, content FROM muslim"); // PHP FOR EACH LOOP HERE TO DISPLAY OUR RESULTS foreach($results as $row) { echo $row->hadith_no." ".$row->content."<br>"; } // END OUR FOR EACH LOOP ?> // PAGINATION HERE IN NICE BOOTSTRAP STYLES <?php echo '<div class="pagination">'; echo paginate_links( array( 'base' => add_query_arg( 'cpage', '%#%' ), 'format' => '', 'prev_text' => __('&laquo;'), 'next_text' => __('&raquo;'), 'total' => ceil($total / $post_per_page), 'current' => $page, 'type' => 'list' )); echo '</div>'; ?> 

Это даст мне вертикальную разбивку на страницы внизу страницы и покажет весь контент на одном посту вместо 10 сообщений. Любой, кто может помочь мне использовать pagination на pagination на моем post или изменить этот код, чтобы я мог pagination . Спасибо.

Solutions Collecting From Web of "разбиение на страницы данных с использованием SQL-запроса"

 <?php global $wpdb; // QUERY HERE TO COUNT TOTAL RECORDS FOR PAGINATION $total = $wpdb->get_var("SELECT COUNT(*) FROM (SELECT * FROM muslim LIMIT 0,431) AS a"); $post_per_page = 10; $page = isset( $_GET['cpage'] ) ? abs( (int) $_GET['cpage'] ) : 1; $offset = ( $page * $post_per_page ) - $post_per_page; // QUERY HERE TO GET OUR RESULTS $results = $wpdb->get_results("SELECT hadith_no, content FROM muslim LIMIT $post_per_page OFFSET $offset"); // PHP FOR EACH LOOP HERE TO DISPLAY OUR RESULTS foreach($results as $row) { echo $row->hadith_no." ".$row->content."<br>"; } // END OUR FOR EACH LOOP ?> <?php echo '<div class="pagination">'; echo paginate_links( array( 'base' => add_query_arg( 'cpage', '%#%' ), 'format' => '', 'prev_text' => __('&laquo;'), 'next_text' => __('&raquo;'), 'total' => ceil($total / $post_per_page), 'current' => $page, 'type' => 'list' )); echo '</div>'; ?> 

Просто отредактируйте SQL-запрос в соответствии с вашими потребностями, и это будет работать сладко.