Wordpress:我需要每个博客帖子都出现在博客页面下,并且最新的帖子出现在一个类别中(代码到目前为止还没有工作)

时间:2017-12-29 22:29:58

标签: wordpress function

我一直试图让一个特定的页面显示所有帖子,而有一个类别只显示最新的帖子。我的页面和类别都显示为主菜单的一部分。

functions.php中的这段代码将显示我的Page和我的Category的单个帖子。但是,我需要博客页面来显示所有这些内容。虽然只有一个类别的帖子。 (我不能使用插件,因为他们希望这是手工完成的。)

 if( is_page_template( 'article-vedette-solo.php' ) ){

    function my_main_query($query){
    if( !is_admin() && $query->is_main_query() ){
        $query->set( 'posts_per_page', 1 );
    }
}
add_action('pre_get_posts','my_main_query');
}

1 个答案:

答案 0 :(得分:0)

pre_get_posts具有不同的优先级,如果条件不能将该操作放到另一个。

尝试其他方式,将您的第一个条件置于pre_get_posts行动中,它可能对您有所帮助。找到下面的代码,

function my_main_query($query) {

    if( !is_admin() && $query->is_main_query() ) {

        if( is_page_template( 'article-vedette-solo.php' ) ) {

            $query->set( 'posts_per_page', 1 );
        }
    }
}
add_action('pre_get_posts','my_main_query');

希望有所帮助:)