我不知道您新修改的代码,也找不到我之前所做的确切用例,但正如我已经说过的,您应该使用pre_get_posts
在主页上设置所需的帖子数量。
在我这样做之前,只要一个专业提示,它将为您避免调试带来的许多麻烦,请使用正确的老派语法,即花括号({}
)。我不知道有哪种代码编辑器支持您的语法,这使得调试成为一场噩梦。所有人都支持花括号。因此,避免使用
if ( \'something\' )
// Do what you need to do
else
// Do something else
并避免使用
if ( \'something\' ) :
// Do what you need to do
else :
// Do something else
endif;
而是使用
if ( \'something\' ) {
// Do what you need to do
} else {
// Do something else
}
回到问题上来,你可以试试
add_action( \'pre_get_posts\', function ( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( \'posts_per_page\', 1 ); // Remove post if you only need page
}
});