如何在两个单独的div中显示循环中的字段

时间:2020-07-21 作者:pual

我在制作这个网站的时候,我把东西分为两列:左边是标题列表,当你点击它们时,它会展开一个文本,右边会显示相应的图像。为此,我使用css网格。这是我用来生成博客帖子和显示相应图像的代码。我的问题是.four 应该在左边没错.five 应该在左边,但不是从那以后.five 在下生成.four (左)。我怎样才能正确地写这个.five 不是的孩子.four 还是我的孩子.wrapper 但是保持id() 点的好吗?

 <div class="wrapper-top">
    <div class="four">
    <?php
// the query
    $all_posts = new WP_Query( array( \'post_type\' => \'post\', \'post_status\' => \'publish\', \'posts_per_page\' => -1 ) );

    if ( $all_posts->have_posts() ) :
        ?>

        <ul>
            <?php while ( $all_posts->have_posts() ) : $all_posts->the_post();  global $post;
                ?>

                <li class=\'sub-menu\'> <a href=\'#\' class="exposition"  data-id="<?php the_id();?>"><?php the_title(); ?></a> <ul>
                    <li><?php the_content(); ?>
                    <?php the_id();?>
                </li>
            </ul>
        </li>
    </ul>

    <div class="five"> 
        <?php $images = get_field(\'gallery\');
        if( $images ): ?>
            <div class="slide-photos" id="<?php the_id();?>" data-id="<?php the_id();?>"> 
                <?php foreach( $images as $image ): ?>
                    <div class="photos-ind"><img id="<?php the_id();?>" class="slide-photos" src="<?php echo esc_url($image[\'sizes\'][\'thumbnail\']); ?>" data-id="<?php the_id();?>"/></div>
                    <?php endforeach; ?></div>
                <?php endif; ?>
            </div>
        <?php endwhile; ?>
        <?php else : ?>
        <?php endif; ?>
    </div>
</div>
非常感谢。

1 个回复
最合适的回答,由SO网友:mozboz 整理而成

一个简单的解决方案是只运行两次循环。

    <?php // set loop $args here so they\'re in once place ?>

    <div class="four">
        <?php // run the loop once with $args, output left side items ?>
    </div>
    <div class="five">
        <?php // run the loop again with $args, output right side items ?>
    </div>