Powered by Blogger.

Getting All Post in Page with Pagination


functions.php===>

 <?php  
 function pagination($pages = '', $range = 4)  
  {  
  $showitems = ($range * 2)+1;  
 global $paged;  
  if(empty($paged)) $paged = 1;  
 if($pages == '')  
  {  
  global $wp_query;  
  $pages = $wp_query->max_num_pages;  
  if(!$pages)  
  {  
  $pages = 1;  
  }  
  }  
 if(1 != $pages)  
  {  
  echo "<div class=\"pagination\"><span>Page ".$paged." of ".$pages."</span>";  
  if($paged > 2 && $paged > $range+1 && $showitems < $pages) echo "<a href='".get_pagenum_link(1)."'>First</a>";  
  if($paged > 1 && $showitems < $pages) echo "<a href='".get_pagenum_link($paged - 1)."'> << Previous</a>";  
 for ($i=1; $i <= $pages; $i++)  
  {  
  if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems ))  
  {  
  echo ($paged == $i)? "<span class=\"current\">".$i."</span>":"<a href='".get_pagenum_link($i)."' class=\"inactive\">".$i."</a>";  
  }  
  }  
 if ($paged < $pages && $showitems < $pages) echo "<a href=\"".get_pagenum_link($paged + 1)."\">Next >></a>";  
  if ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) echo "<a href='".get_pagenum_link($pages)."'>Last</a>";  
  echo "</div>\n";  
  }  
  }  
 ?>  

style.css===>

 .pagination {  
  clear:both;  
  padding:20px 0;  
  position:relative;  
  font-size:11px;  
  line-height:13px;  
  }  
 .pagination span, .pagination a {  
  display:block;  
  float:left;  
  margin: 2px 2px 2px 0;  
  padding:6px 9px 5px 9px;  
  text-decoration:none;  
  width:auto;  
  color:#fff;  
  background: #555;  
  }  
 .pagination a:hover{  
  color:#fff;  
  background: #3279BB;  
  }  
 .pagination .current{  
  padding:6px 9px 5px 9px;  
  background: #3279BB;  
  color:#fff;  
  }  
 &nbsp;  

Template Code(use in index.php)===>

 <?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;  
  $args = array( 'post_type' => 'post', 'posts_per_page' => 10, 'paged' => $paged ,'cat' => '4' );  
  $wp_query = new WP_Query($args);  
  while ( have_posts() ) : the_post(); ?>  
  <!-- <h2><?php the_title() ?></h2>--><?php get_template_part('post-type/main'); ?>  
  <?php endwhile; ?>  
 <!-- then the pagination links -->  
  <?php next_posts_link( 'Older posts' ); ?>  
  <?php previous_posts_link( 'Newer posts' ); ?>  
 <?php if (function_exists("pagination")) {  
  pagination();  
  } ?>  


No comments