<?php
$page = (get_query_var('paged')) ? get_query_var('paged') : 1;
$max_first_page = 3;
$posts_per_page = 4;
$posts_to_skip = $posts_per_page - $max_first_page;
if ($page == 1) {
$max_posts = $max_first_page;
} else {
$max_posts = $posts_per_page;
$offset = (($page - 1) * $max_posts)- $posts_to_skip;
}
$args = array(
'posts_per_page' => $max_posts,
'post_type' => 'news-item',
'offset' => $offset,
'paged' => $paged
);
$temp = $wp_query;
$wp_query= null;
$wp_query = new WP_Query($args);
$style_classes = array('first','second');
$style_index = 0;
?>
<?php if (have_posts()) : ?>
<?php $post = $posts[0]; $c=0; ?>
<?php while ($wp_query->have_posts()) : $wp_query->the_post();?>
<?php $c++; if( !$paged && $c == 1) : ?>
<div class="most-recent-post">
// First large post on first page
</div>
<?php else: ?>
<div class="post-block <?php $k = $style_index%2; echo "$style_classes[$k]"; $style_index++; ?>">
// Normal posts
</div>
<?php endif;?>
<?php endwhile; ?>
<?php endif; ?>
<!-- page nav -->
<div class="page-navi">
<?php
$numposts = $wp_query->found_posts; // Total number of posts
$numpages = 1 + ceil(($numposts - $max_first_page) / $posts_per_page); // Total number of pages
$pagenr = (get_query_var('paged')) ? get_query_var('paged') : 1;
?>
<?php if(function_exists('wp_paginate')) {
wp_paginate('page='.$pagenr.'&pages='.$numpages);
} ?>
</div>
<?php $wp_query = null; $wp_query = $temp;?>