【问题标题】:How to display a different number of posts on Wordpress homepage如何在 Wordpress 主页上显示不同数量的帖子
【发布时间】:2012-10-18 12:30:37
【问题描述】:

我已经从 WordPress 管理面板设置了每页显示 10 个帖子,但我想在第一页显示 11 个帖子,在我的例子中是它的主页。所以我想在主页上显示 11 个帖子,而对于所有其他页面,我想显示 10 个帖子。

我正在尝试使用此代码来实现它,但无论页码如何,is_home() 总是返回 true。

function home_custom_query( $query ) {

    if (  is_home() )
    {
        $query->query_vars['posts_per_page'] = 11; 
    }

    return $query; 
}
add_filter( 'pre_get_posts', 'home_custom_query' );  

但是上面的代码改变了所有页面的帖子数量,包括主页。

我也试过这个来检测页码并尝试如下

function home_custom_query( $query ) {

    if (  is_home() && $query->query_vars['paged'] == 0)
    {
        $query->query_vars['posts_per_page'] = 11; 
    }

    return $query; 
}
add_filter( 'pre_get_posts', 'home_custom_query' ); 

它将主页的每页帖子更改为 11 个,但在所有其他页面上不显示任何内容。

我还尝试了cbnet-different-posts-per-page 插件,它可以达到目的,但它添加了一些我不想使用的额外功能。我需要一个简单的解决方案来解决我的问题。而且我相信会有一种简洁明了的方法来解决这个问题。

【问题讨论】:

    标签: wordpress wordpress-theming


    【解决方案1】:

    您的模板必须在某处有一个循环,您可以在其中做一个查询帖子。您可以在其中提供参数 showposts。她就是一个例子。

    <?php
    $page_num = $paged;
    if ($pagenum='') $pagenum =1;
    
    if(is_home) { $showposts = 11 } else { $showposts = 10 }
    
    query_posts('showposts=' .$showposts. '&paged='.$page_num); 
    ?>
    
    
    
    <?php if (have_posts()) : ?>
        <?php while (have_posts()) : the_post(); ?> 
           // WordPress loop
        <?php endwhile; ?> 
    <?php endif; ?>
    

    【讨论】:

      【解决方案2】:

      我做了如下,可能对你也有帮助。

      <?php
      $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
      $page_num = $paged;
      if( $paged >1 ) 
          $showposts = 10; 
      else 
          $showposts = 11;
      query_posts('showposts=' .$showposts. '&paged='.$page_num);
      ?>
      
      
      <?php if (have_posts()) : ?>
          <?php while (have_posts()) : the_post(); ?> 
             // WordPress loop
          <?php endwhile; ?> 
      <?php endif; ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-09-14
        • 2013-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多