2013-03-12 145 views
0

我是一个wordpress n00b并且遇到分页问题。我有以下的“样本”环我使用代码:Wordpress循环分页在分页时在所有页面上显示第1页结果

<div id="content"> 
    <?php /* Top post navigation */ ?> 
    <?php 
       $args = array(
       'posts_per_page' => '25', 
       'cat' => '-33' 
        ); 
    ?> 
    <?php global $wp_query; 
       $wp_query = new WP_Query($args); 
       $total_pages = $wp_query->max_num_pages; 
       if ($total_pages > 1) { ?> 

    <?php } ?> 

    <?php /* The Loop — with comments! */ ?> 
    <?php while (have_posts()) : the_post() ?> 

    <?php /* Create a div with a unique ID thanks to the_ID() and semantic classes with post_class() */ ?> 
        <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>> 
    <?php /* an h2 title */ ?> 
         <h2 class="entry-title"><a href="<?php the_permalink(); ?>" title="<?php printf(__('Permalink to %s', 'hbd-theme'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a></h2> 

    <?php /* Microformatted, translatable post meta */ ?> 
         <div class="entry-meta"> 
          <span class="meta-prep meta-prep-author"><?php _e('By ', 'hbd-theme'); ?></span> 
          <span class="author vcard"><a class="url fn n" href="<?php echo get_author_link(false, $authordata->ID, $authordata->user_nicename); ?>" title="<?php printf(__('View all posts by %s', 'hbd-theme'), $authordata->display_name); ?>"><?php the_author(); ?></a></span> 
          <span class="meta-sep"> | </span> 
          <span class="meta-prep meta-prep-entry-date"><?php _e('Published ', 'hbd-theme'); ?></span> 
          <span class="entry-date"><abbr class="published" title="<?php the_time('Y-m-d\TH:i:sO') ?>"><?php the_time(get_option('date_format')); ?></abbr></span> 
          <?php edit_post_link(__('Edit', 'hbd-theme'), "<span class=\"meta-sep\">|</span>\n\t\t\t\t\t\t<span class=\"edit-link\">", "</span>\n\t\t\t\t\t") ?> 
         </div><!-- .entry-meta --> 

    <?php /* The entry content */ ?> 
         <div class="entry-content"> 
    <?php the_content(__('Continue reading <span class="meta-nav">&raquo;</span>', 'hbd-theme') ); ?> 
    <?php wp_link_pages('before=<div class="page-link">' . __('Pages:', 'hbd-theme') . '&after=</div>') ?> 
         </div><!-- .entry-content --> 

    <?php /* Microformatted category and tag links along with a comments link */ ?> 
         <div class="entry-utility"> 
          <span class="cat-links"><span class="entry-utility-prep entry-utility-prep-cat-links"><?php _e('Posted in ', 'hbd-theme'); ?></span><?php echo get_the_category_list(', '); ?></span> 
          <span class="meta-sep"> | </span> 
          <?php the_tags('<span class="tag-links"><span class="entry-utility-prep entry-utility-prep-tag-links">' . __('Tagged ', 'hbd-theme') . '</span>', ", ", "</span>\n\t\t\t\t\t\t<span class=\"meta-sep\">|</span>\n") ?> 
          <span class="comments-link"><?php comments_popup_link(__('Leave a comment', 'hbd-theme'), __('1 Comment', 'hbd-theme'), __('% Comments', 'hbd-theme')) ?></span> 
          <?php edit_post_link(__('Edit', 'hbd-theme'), "<span class=\"meta-sep\">|</span>\n\t\t\t\t\t\t<span class=\"edit-link\">", "</span>\n\t\t\t\t\t\n") ?> 
         </div><!-- #entry-utility --> 
        </div><!-- #post-<?php the_ID(); ?> --> 

    <?php /* Close up the post div and then end the loop with endwhile */ ?>  

    <?php endwhile; ?> 

    <?php /* Bottom post navigation */ ?> 
    <?php global $wp_query; $total_pages = $wp_query->max_num_pages; if ($total_pages > 1) { ?> 
        <div id="nav-below" class="navigation"> 
         <?php next_posts_link(__('<span class="meta-nav">&laquo;</span> Older posts', 'hbd-theme')) ?> <span style="color: #bbb;">&#8226;</span> <?php previous_posts_link(__('Newer posts <span class="meta-nav">&raquo;</span>', 'hbd-theme')) ?> 
        </div><!-- #nav-below --> 
    <?php } ?> 
</div><!-- #content --> 

我有一种感觉,我重写某些查询值,但我发现矛盾在各种博客信息。我有一种感觉,它与我的$args阵列有关。

我应该连接,而不是?

如果是这样,在哪里? $wp_query

在此先感谢您的帮助,并对wordpress noob-ness道歉。

回答

1

我会在你args

$paged = get_query_var('paged') ? get_query_var('paged') : 1; // setup pagination 

下使用它来显示分页

'<div class="classForOld">'.get_next_posts_link('Older', $wp_query->max_num_pages).'</div>'; //Older Link using max_num_pages 
'<div class="classForNew">'.get_previous_posts_link('Newer', $wp_query->max_num_pages).'</div>'; //Newer Link using max_num_pages 

这就是所有你需要添加,然后在args

$args = array(
      'posts_per_page' => 25, 
      'cat' => '-33', 
      'paged' => $paged 
     ); 

+0

谢谢大卫。这工作。 虽然我没有在'args'中删除额外的'posts_per_page'。 我开始理解这些功能,并且帮助了很多 - 只有这些行。再次感谢! – Mak 2013-03-13 00:40:02

+0

很高兴帮助你,对于那份重复,很好的接吻感到抱歉! – 2013-03-13 01:01:49