循环不工作时循环增加

时间:2022-01-14 作者:Pbalazs89

我的目标是创建一个布局,其中第一个帖子是循环中的全宽帖子,之后的所有帖子都是50%。

我创建了以下代码:

<?php if ( $query->have_posts() ) : ?>

                                <!-- begin loop -->
                                <?php $i=0; ?>
                                <?php while ( $query->have_posts() ) : $query->the_post();  $i++  ?>

                                <?php
                                if ( $i = 1) { 
                                
                                
                                ?>

                                <article class="col-12">
                                    <div class="item-inner-main">
                                        <div class="image-blocks-main">
                                            <a href="<?php the_permalink(); ?>">
                                                <img src="<?php the_post_thumbnail_url( \'owl-size\' ); ?>">

                                        </div>
                                        <div class="text-holder-main text-holder-main-desktop-position">
                                            <time class="time "><span
                                                    class="year"><?php the_time( \'M.j\' ); ?></span><span
                                                    class="lightorange"><?php the_time( \'H:i\' ); ?></span></time>
                                            <h2><?php the_title(); ?>
                                            </h2>
                                        </div>
                                    </div>
                                    </a>
                                    <h1><?php echo $i; ?></h1>
                                </article>



                                <?php 
                                } if ($i >= 2) {  ?>
                                <article class="col-6">
                                    <div class="item-inner-main">
                                        <div class="image-blocks-main">
                                            <a href="<?php the_permalink(); ?>">
                                                <img src="<?php the_post_thumbnail_url( \'owl-size\' ); ?>">


                                        </div>
                                        <div class="text-holder-main">
                                            <time class="time "><span
                                                    class="year"><?php the_time( \'M.j\' ); ?></span><span
                                                    class="lightorange"><?php the_time( \'H:i\' ); ?></span></time>
                                            <h2 class="entry-title-main item-main-half">
                                                <?php the_title(); ?>
                                            </h2>
                                        </div>
                                    </div>
                                    </a>
                                </article>
                                <h1><?php echo $i; ?></h1>
                                <?php } 
                                
                                ?>



                                <?php endwhile; ?>
然而,当我测试这段代码时,所有帖子都输出数字1。我不明白为什么I美元没有增加。有什么想法吗?

谢谢

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

您在每个循环中重新分配1到1美元:

if ( $i = 1) { 
这应该是

if ( $i == 1) { 
甚至

if ( $i === 1) { 
这也将比较post类型,这是最佳实践。

在PHP中,=assignment, ==comparison:

相关推荐

WordPress Custom Post Loop

我正在尝试循环浏览自定义WordPress帖子,遇到了一个问题,比如我添加了自定义字段并想在中显示它<li> 使用循环。我成功地完成了操作,但数据/链接/类别正在重复,如果类别与以下内容相同,我希望只显示一次:如果我有2篇带有data1类别的帖子,那么链接将只显示data1once 但我有2个不同类别的帖子,然后它会分别显示每个帖子。Sample Code:<ul class="filter filter-top"> <li cla