重复循环内的行

问题描述 投票:0回答:1

我正在研究一个重复相同行的WordPress帖子循环。我实现了第一行,但第二行没有循环,而第一行完美循环。

下面是循环和屏幕截图的代码。

Actual Layout I want to achieve

循环码

$count = 1;

$featured_posts = new \WP_Query( $args );
if ( $featured_posts->have_posts() ) : while ($featured_posts->have_posts()) : $featured_posts->the_post();
    if ( 1 == $count % 5 ) {
        echo '<div class="wh-tiles-posts-left">';
    } elseif ( 2 == $count % 5 ) {
        echo '<div class="wh-tiles-posts-right">';
    } elseif ( 4 == $count % 9 ) {
        echo '<div class="wh-tiles-posts-left2">';
    } elseif ( 5 == $count % 10 ) {
        echo '<div class="wh-tiles-posts-right2">';
    }
    $this->render_post_body( $count );

    if ( 1 == $count % 5  ) {
        echo '</div>';
    } elseif ( 3 == $count % 6 ) {
        echo '</div>';
    } elseif( 4 == $count % 9 ) {
        echo '</div>';
    } elseif ( 5 == $count % 10 ) {
        echo '</div>';
    }
    $count++;

    endwhile;
    endif;
    wp_reset_postdata();

我究竟做错了什么?。带有类名输出的div显示在下面的图像2中,以便更好地解释。

Image with classnames

php wordpress loops while-loop
1个回答
0
投票

我认为这是关于何时添加各种div标签的计算,我已经改变了计算,特别是只进行了1次密切测试...

if ( 0 == ($count-1) % 5 ) {
    echo '<div class="wh-tiles-posts-left">';
} elseif ( 1 == ($count-1) % 5 ) {
    echo '<div class="wh-tiles-posts-right">';
} elseif ( 3 == ($count-1) % 5 ) {
    echo '<div class="wh-tiles-posts-left2">';
} elseif ( 4 == ($count-1) % 5 ) {
    echo '<div class="wh-tiles-posts-right2">';
}
$this->render_post_body( $count );

if ( 1 != ($count-1) % 5 ) {
    echo '</div>';
} 
© www.soinside.com 2019 - 2024. All rights reserved.