显示特定类别的所有帖子

时间:2018-11-07 作者:Maria Herrera

问题:

我试图在我的网站上显示来自一个名为“文化”(slug:Culture)的特定类别的所有帖子。然而,我总是得到一个空字段。

我的尝试:

我尝试将自定义模板中使用的相同结构用于其他选项。在这个自定义模板中,有一个选项卡容器,包含4个选项:最新、趋势、视频和图库。

enter image description here

例如,要获取具有video post格式的所有帖子,请执行以下代码:

<?php query_posts(array( \'tax_query\' => array( array( \'taxonomy\' => \'post_format\', \'field\' => \'slug\', \'terms\' => \'post-format-video\' )) )); if (have_posts()) : ?>
    <li>
        <a href="#videos"><span class="home-head-toggle-item"><?php esc_html_e( \'Videos\', \'template\' ); ?></span></a>
    </li>
<?php endif; wp_reset_query(); ?>
因此,我将其改编为:

<?php query_posts(array( \'tax_query\' => array( array( \'taxonomy\' => \'category\', \'field\' => \'slug\', \'terms\' => array( \'culture\' ) )) )); if (have_posts()) : ?>
    <li>
        <a href="#culture"><span class="home-head-toggle-item"><?php esc_html_e( \'Culture\', \'template\' ); ?></span></a>
    </li>
<?php endif; wp_reset_query(); ?>
不幸的是,它没有像我预期的那样工作,什么也没有出现。

enter image description here

我做错什么了吗?

如果您需要更多详细信息,请告诉我。

提前感谢!

1 个回复
SO网友:Quang Hoang

在您的查询帖子中,我没有看到您的帖子类型参数。必须使用此参数才能获取所有帖子。请按照代码尝试此操作,并将其放在您想要显示的任何位置。

<?php 
$post_args = array(
    \'post_type\' => \'post\', //get post by \'post\' (default post type).
    \'posts_per_page\' => -1, //show all posts.
    \'tax_query\' => array( 
        array( 
            \'taxonomy\' => \'category\', 
            \'field\' => \'slug\', 
            \'terms\' => array(\'culture\') 
        )
    ) 
);
$the_qry = new WP_Query($post_args);
if($the_qry->have_posts()){
    while($the_qry->have_posts()){
        $the_qry->the_post();

        //show all list the post.
        echo \'<li>
                <a href="\'.get_permalink().\'">\'.get_the_title().\'</a>
            </li>\';
    }
    wp_reset_postdata();
}
?>

结束