ACF Post Object пустой возврат - PullRequest
0 голосов
/ 12 июня 2019

У меня есть пользовательский тип записи под названием «Проекты», и в представлении single-project.php я хочу показать сообщения, связанные с Проектом.Я пытался решить эту проблему с помощью объекта Post объекта ACF, но ничего не получил от The Loop.Я искал решение на странице поддержки Stackoverflow и AFC и не смог найти проблему.

Возможно, эта опция 'Post Object' даже не создана для чего-то подобного.Я не знаю.

Код внутри 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

Вместо знаков вопроса я хочу показать сообщения, связанные с этим проектом.

1 Ответ

0 голосов
/ 13 июня 2019

Поскольку вы допустили несколько значений для поля, полученное значение будет в массиве.И так как вы установили возвращаемое значение как объект 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 -->
...