如何修复元查询显示具有定义类别的所有帖子

时间:2019-04-30 11:33:51

标签: php wordpress

我编写了一些代码,该代码应显示与已定义项目有关的分类为新闻文章的帖子。

相反,下面的代码返回所有归类为新闻文章的帖子。

我已经浏览了ACF支持论坛,在我的网络中Stack&询问了一些开发人员,但似乎仍然无法解决问题。

<div class="news__feed">
    <?php 
    // args
    $args = array(
        'numberposts' => -1,
        'post_type' => 'post',
        'meta_query' => array(
            array(
                'key' => 'related_projects',
                'value' => 0,
                'type' => 'NUMERIC',
                'compare' => '>'
            )
        )
    );
    $show = false;
    $the_query = new WP_Query( $args );?>
    <?php if( $the_query->have_posts() ): ?>
        <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
            <?php $article_id = get_the_ID(); $articles_exist = false; ?>
            <?php echo "<script>console.log('" . $article_id . "');</script>";?>
            <?php
            while (have_rows('related_projects', get_the_ID())) : the_row();
                $post_object = get_sub_field('project');
                if($post_object): 
                    $post = $post_object;
                    setup_postdata($post);
                    if(get_the_ID() == $project_id):
                        $show = true;
                        $articles_exist = true;
                    endif;
                    wp_reset_postdata();
                endif;
            endwhile; $post = get_post($article_id);
            ?>
            <?php if($show): ?>
                <article class="article">
                    <div class="article__content">
                        <?php if (has_post_thumbnail( $post->ID ) ): ?>
                            <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'feed-item' ); ?>
                            <div class="article__image" style="background-image: url(<?php echo $image[0]; ?>);">
                        <?php else: ?>
                            <div class="article__image">
                        <?php endif; ?>
                        </div>
                        <div class="article__text">
                            <h3 class="article__title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
                            <p class="article__date"><?php echo get_the_date(); ?></p>
                            <p class="article__description"><?php $the_query->the_post(); the_excerpt(); ?></p>
                        </div>
                    </div>
                </article>  
            <?php endif; ?>
        <?php endwhile; ?>
    <?php endif; ?>
    <?php wp_reset_query(); ?>
    <?php if(!$articles_exist){ ?>
        <article class="article">
            <div class="article__content">
                <p class="article__description">No related news articles exist</p>
            </div>
        </article>
    <?php } ?>
</div>

在此代码中有什么与众不同之处吗?

在第5至12行之间更改值时,我可以抛出不同的结果,但是没有任何东西可以为我提供所需的结果。

任何帮助表示赞赏。

0 个答案:

没有答案