【问题标题】:ACF Post Object empty returnACF Post Object 空返回
【发布时间】:2019-10-27 06:35:07
【问题描述】:

我有一个名为“项目”的自定义帖子类型,并且在 single-project.php 视图中想要显示与项目相关的帖子。 我试图通过使用 ACF 的 Post Object 来解决这个问题,但从 The Loop 中一无所获。 我在 Stackoverflow 和 AFC 支持页面上搜索了解决方案,但找不到问题。

也许这个“发布对象”选项甚至不是为这样的东西创建的。我不知道。

single-project.php 中的代码


if( $post_object ):

    // override $post
    $post = $post_object;
    setup_postdata( $post );

    ?>
    <div>
        <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
    </div>
    <?php wp_reset_postdata(); // IMPORTANT - reset the $post object so the rest of the page works correctly ?>
<?php endif; ?>

ACF 配置 https://i.imgur.com/FNnUbiw.jpg

新的帖子配置 https://i.imgur.com/IHQqR0P.jpg

自定义帖子类型输出 https://i.imgur.com/YFugBZl.jpg

在问号的位置,我想显示与该项目相关的帖子。

【问题讨论】:

    标签: wordpress advanced-custom-fields custom-post-type


    【解决方案1】:

    由于您允许该字段有多个值,因此获得的值将在数组中。并且由于您已将值设置为 post 对象,因此获得的值将是对象数组。得到数组后,可以循环显示相关项目。

    <div class="related-projects">
        <?php
        $projects = get_field( 'povezani_projekt' );
        global $post;
        ?>
        <?php if ( ! empty( $projects ) ) : ?>
            <h3>Related Projects</h3>
            <?php foreach ( $projects as $post ) : ?>
                <?php setup_postdata( $post ); ?>
                    <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
                <?php wp_reset_postdata(); ?>
            <?php endforeach; ?>
        <?php endif; ?>
    </div><!-- .related-projects -->
    

    【讨论】:

    • 嗨@Nilambar。我认为有一个误解。使用您的代码,我会在我的帖子视图中获得相关项目的“列表”。我需要反转的东西。在我的项目视图中(single-project.php;我不知道如何更好地描述它),我想显示相关的帖子。
    猜你喜欢
    • 2017-05-28
    • 2021-05-17
    • 1970-01-01
    • 2017-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多