首页 > 解决方案 > 具有高级自定义字段的嵌套 Wordpress 帖子对象循环

问题描述

我正在寻找在另一个帖子对象中显示一个帖子对象。

这对于在另一个页面上显示内容(包含帖子对象)很有用。

我希望这可能不适用于重复的 wp_reset_postdata。

感谢您的任何想法和建议。

<?php $post_object = get_sub_field('first-loop');
if( $post_object ): 
    $post = $post_object;
    setup_postdata( $post ); ?>

        <?php $post_object = get_sub_field('second-loop');
        if( $post_object ): 
            $post = $post_object;
            setup_postdata( $post ); ?>

                <!-- advanded custom fields -->

            <?php wp_reset_postdata();?>
        <?php endif; ?>

    <?php wp_reset_postdata();?>
<?php endif; ?>

标签: phpwordpressadvanced-custom-fields

解决方案


我得到了高级自定义字段支持的帮助(谢谢帕特里克!),解决方案如下。这是一个单书 [自定义帖子] 的循环,其中包含一个自定义字段,该字段是一个帖子对象,它从另一个自定义帖子(卖家)获取内容,其中列出了一系列帖子对象(书籍)。

<?php  $post_object = get_field('post-object'); 
if( $post_object->ID ): ?>
        post-object title: <?php echo $post_object->post_title; ?>
        <?php if( have_rows('books', $post_object->ID) ):?>
            <?php while ( have_rows('books', $post_object->ID) ) : the_row();?>
                <?php  $book = get_sub_field('book');
                if( $book->ID ): 
                ?>
                Title: <?php echo($book->post_title); ?>
                <?php echo($book->cover ); ?>
                <?php $image = get_field('cover' , $book);
                if( !empty($image) ): ?>
                    <img src="<?php echo $image['sizes']['medium']; ?>" alt="<?php echo $image['alt']; ?>" />
                <?php endif; ?>
                <?php endif; ?> 
            <?php endwhile;?>
        <?php endif;?>
    <?php wp_reset_postdata(); ?>
<?php endif; ?> 

推荐阅读