问题
I've got two loops on my front page that are both using pagination - I've managed to find code to get this to work, pasted below. Is it possible to have paginate_links not show my total number of posts? Currently it looks like: 1, 2, 3...526. Next. I'd prefer: 1, 2, 3... Next.
Current code:
// Courtesy of Boone Gorges
$paged1 = isset( $_GET['paged1'] ) ? (int) $_GET['paged1'] : 1;
$paged2 = isset( $_GET['paged2'] ) ? (int) $_GET['paged2'] : 1;
// Custom Loop with Pagination 1
// http://codex.wordpress.org/Class_Reference/WP_Query#Usage
$args1 = array(
'paged' => $paged1, // http://codex.wordpress.org/Class_Reference/WP_Query#Pagination_Parameters
'posts_per_page' => 1,
'category_name' => 'wod'
);
$query1 = new WP_Query( $args1 );
while ( $query1->have_posts() ) : $query1->the_post();
echo '<h4>';
the_date();
echo '</h4>';
the_content();
echo '<hr>';
endwhile;
// http://codex.wordpress.org/Function_Reference/paginate_links
$pag_args1 = array(
'format' => '?paged1=%#%',
'current' => $paged1,
'total' => $query1->max_num_pages,
'show_all' => False,
'add_args' => array( 'paged2' => $paged2 ),
'prev_text' => 'Next',
'next_text' => 'Prev'
);
echo paginate_links( $pag_args1 );
?>
回答1:
I just fixed the same problem. Here is how:
1) get the pagination with type array
$pagination = paginate_links(array(
....
'type' => 'array',
));
2) remove the second last item from the array
unset($pagination[sizeof($pagination)-2]);
3) build the list from the array
echo '<ul>';
foreach ($pagination as $pag)
{
echo '<li>';
echo $pag;
echo '</li>';
}
echo '</ul>';
来源:https://stackoverflow.com/questions/14014875/wordpress-paginate-links-without-showing-total-posts