为什么我的分类查询不会出现?

时间:2014-04-15 作者:Wilhelm

我正在尝试显示posts 来自\'Uncategorized\' 名为\'Reviews\' 但运气不好。

我正在使用get_template_part(\'loop\',\'review\') 调用loop-review.php 其中包含我的分类循环,但由于某种原因,不会显示任何内容。有什么好处?

以下是loop-review.php...

<div class="row no-margin detail">
    <p class="title"><span>reviews</span></p>
    <?php 

    $args = array(
        \'post_type\' => \'post\',
        \'tax_query\' => array(
            array(
                \'taxonomy\'  => \'review\',
                \'field\'     => \'slug\',
                \'terms\'     => \'uncategorized\'
            )
        )
    ); $review_query = new WP_Query($args); ?>
    <?php if ($review_query->have_posts()): ?>
            <?php while ($review_query->have_posts()): $review_query->the_post(); ?>
                    <p class="quote">
                            <?php the_content(); ?>
                            <span><?php the_title(); ?></span>
                    </p>
            <?php endwhile; ?>
            <!-- end of the loop -->
                    <?php wp_reset_postdata(); ?>
    <?php else:  ?>
                    <p><?php _e( \'Sorry, no posts matched your criteria.\' ); ?></p>
    <?php endif; ?>
</div>
我打电话get_template_part(\'loop\',\'review\') 在我的my内category.php...

<?php 

get_header(); 

if (is_category(\'portfolio\')): 
    get_template_part(\'single\',\'portfolio\'); 
    get_template_part(\'loop\',\'review\');
else: 
    get_template_part("single","blog");
endif; 

get_footer(); 

?>
最后,这是我的functions.php...

add_action(\'init\', \'build_taxonomies\', 0);
function build_taxonomies(){
        register_taxonomy(\'review\', \'post\', array(
            \'hierarchical\'    => \'true\',
            \'label\'           => \'Reviews\',
            \'query_var\'       => \'true\',
            \'rewrite\'         => \'true\'
        )
    );
}

2 个回复
SO网友:Milo

没有方法the_content()the_title() 您的查询对象的。

这些:

$review_query->the_content();
$review_query->the_title();
应该是

the_content();
the_title();
如果你有debugging enabled 您将看到一个错误,通知您这一点。

SO网友:Justin Kopepasah

乍一看,我发现您的查询需要\'post_type\' => \'page\'post 对象类型。将职位类型更改为post (\'post_type\' => \'post\') 应该可以解决问题。

结束