-
function pagination( $query_string ){ -
global $posts_per_page , $paged ; -
$my_query = new WP_Query( $query_string . "&posts_per_page=-1" ); -
$total_posts = $my_query ->post_count; -
if ( empty ( $paged )) $paged = 1; -
$prev = $paged - 1; -
$next = $paged + 1; -
$range = 2; // only edit this if you want to show more page-links -
$showitems = ( $range * 2)+1; -
-
$pages = ceil ( $total_posts / $posts_per_page ); -
if (1 != $pages ){ -
echo "<div class='pagination'>" ; -
echo ( $paged > 2 && $paged + $range +1 > $pages && $showitems < $pages )? "<a href='" .get_pagenum_link(1). "'>Top</a>" : "" ; -
echo ( $paged > 1 && $showitems < $pages )? "<a href='" .get_pagenum_link( $prev ). "'>Previous page</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>" ; -
} -
} -
-
echo ( $paged < $pages && $showitems < $pages ) ? "<a href='" .get_pagenum_link( $next ). "'>Next page</a>" : "" ; -
echo ( $paged < $pages -1 && $paged + $range -1 < $pages && $showitems < $pages ) ? "<a href='" .get_pagenum_link( $pages ). "'>Last</a>" : "" ; -
echo "</div>\n" ; -
} -
}
-
<? php pagination( $query_string ); ?>
-
.pagination{ -
line-height : 23px ; -
} -
.pagination span, .pagination a{ -
font-size : 12px ; -
margin : 2px 6px 2px 0; -
background : #fff ; -
border : 1px solid #e5e5e5 ; -
color : #787878 ; -
padding : 2px 5px 2px 5px ; -
text-decoration : none ; -
} -
.pagination a:hover{ -
background : #8391A7 ; -
border : 1px solid #fff ; -
color : #fff ; -
} -
.pagination .current{ -
background : #fff ; -
border : 1px solid #8d8d8d ; -
color : #393939 ; -
font-size : 12px ; -
padding : 2px 5px 2px 5px ; -
}