如果是真的话,Wordpress分页循环显示分页html

时间:2012-01-04 12:09:56

标签: wordpress

我在循环中使用分页查询。但是,只有在需要分页时才需要输出HTML。因为在某些页面上,分页标记不是必需的,因为页面只有几个帖子。

所以目前在我的循环中,如果存档页面显示8个帖子,我的标记<div class="archive-navigation"></div>仍在输出中。如何将此HTML标记编织到我的分页查询中,以便在需要分页时仅输出HTML?

如果循环调用超过10个帖子,则只需要分页和标记。

提前致谢。

<?php query_posts(array(

    'post_type' => 'download',
    'order' => 'DESC',
    'paged' => $paged,
    'posts_per_page' => 10

)); ?>

<?php if ( have_posts()) : while (have_posts()) : the_post(); ?>

     <!-- MY LOOP -->

<?php endwhile; ?>

    <div class="archive-navigation">

    <?php   
        global $wp_query;
        $big = 999999999; // need an unlikely integer
        echo paginate_links( array(
        'base'      => str_replace( $big, '%#%', get_pagenum_link( $big ) ),
        'format'    => '?paged=%#%',
        'current'   => max( 1, get_query_var('paged') ),
        'total'     => $wp_query->max_num_pages,
        'prev_text' => __('&#8592; previous downloads','multilingol'),
        'next_text' => __('newer downloads &#8594;','multilingol')
        ));
    ?>

    </div>

<?php endif; wp_reset_query(); ?>

1 个答案:

答案 0 :(得分:0)

您可以将type => 'array'添加到如下所示的参数中。

<?php   
global $wp_query;
$big = 999999999; // need an unlikely integer
$links = paginate_links( array(
  'base'      => str_replace( $big, '%#%', get_pagenum_link( $big ) ),
  'format'    => '?paged=%#%',
  'current'   => max( 1, get_query_var('paged') ),
  'total'     => $wp_query->max_num_pages,
  'prev_text' => __('&#8592; previous downloads','multilingol'),
  'next_text' => __('newer downloads &#8594;','multilingol'),
  'type'      => 'array',
));
?>

在此之后,您可以查看count($links)数组是否包含要显示的链接<div>

最终代码如下所示:

<?php   
global $wp_query;
$big = 999999999; // need an unlikely integer
$links = paginate_links( ... )); // Above parameters array.
?>

<?php if (count($links) > 0) : ?>
<div class="archive-navigation">
  <?php foreach ($links as $link) : ?>
  <?php echo $link ?>
  <?php endforeach ?>
</div>
<?php endif ?>

有关使用paginate_links功能的详细信息,请参阅此处:http://codex.wordpress.org/Function_Reference/paginate_links