在第一页设置自定义帖子数量

时间:2014-06-12 作者:Nicy

我需要限制在WordPress首页显示的帖子只在第一页。原因是一篇粘性文章破坏了我的布局和默认WP设置中设置的总帖子数。

我为找到此函数functions.php 但它似乎不起作用。

你能帮我修一下吗?我更喜欢functions.php 改变

我想知道它是否不起作用,因为带有这个片段的帖子真的很新。

add_action( \'pre_get_posts\', \'sk_change_posts_per_page\' );

/**
 * Change Posts Per Page for first page of Posts page
 *
 * @param object $query data
 */
function sk_change_posts_per_page( $query ) {

  if( $query->is_main_query() && ! is_admin() && is_home() && ! is_paged() ) {
    $query->set( \'posts_per_page\', \'2\' );
  }

}

Source

1 个回复
SO网友:Vinod Dalvi

这个pre_get_posts 之前运行WP_Query 已设置。一些模板标记和条件函数依赖于WP_Query 不起作用。您将需要直接使用查询变量,这些变量将传递给pre_get_posts 钩子作为参数。

请参阅以下页面上的更多信息:pre_get_postsusing pre_get_posts

尝试使用以下代码。

add_action( \'pre_get_posts\', \'sk_change_posts_per_page\' );

/**
 * Change Posts Per Page for first page of Posts page
 *
 * @param object $query data
 */
function sk_change_posts_per_page( $query ) {

  if( $query->is_main_query() && ! is_admin() && $query->is_home() && ! $query->is_paged() ) {
    $query->set( \'posts_per_page\', \'2\' );
  }

}

结束

相关推荐