首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP计数器每第1和第4个分区递增

问PHP计数器每第1和第4个分区递增
EN

Stack Overflow用户
提问于 2010-11-03 21:45:52
回答 3查看 2.9K关注 0票数 1

我正在运行一个wordpress if while语句,并且希望我的项目以列的格式显示。

我目前使用的是960.gs,这是您的标准960网格系统,默认情况下会将10px padding添加到左侧和右侧,只需传递一个alpha或omega类,您就可以摆脱这些。

如何让php为第一次添加alpha和第四次添加omega执行语句?

代码语言:javascript
复制
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <div class="grid_4">
        <?php $wp_query->is_home = false; ?>
        <div class="entry">
            <h3 style="margin-bottom:10px;"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
             <?php //the_excerpt() ?>
         </div>
     </div>
<?php endwhile; endif; ?>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-03 21:56:24

也许可以试试这样的东西。我不确定你说的每一天和每四天是什么意思,所以我按照你能看到的方式做了。你应该能够自己定制它。

代码语言:javascript
复制
<?php $counter = 0; ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <?php
        $div = '<div class="entry';
        if ($counter % 4 == 0)
            $div .= " alpha";
        else if($counter % 4 == 3)
            $div .= " omega";
        echo $div . '">';
    ?>
    <div class="grid_4">
        <?php $wp_query->is_home = false; ?>
        <div class="entry">
            <h3 style="margin-bottom:10px;"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
             <?php //the_excerpt() ?>
         </div>
     </div>
     <?php $counter++; ?>
<?php endwhile; endif; ?>
票数 1
EN

Stack Overflow用户

发布于 2010-11-03 21:55:48

试试这个:

代码语言:javascript
复制
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <div class="grid_4">
        <?php $wp_query->is_home = false; ?>
        <div class="entry <?php if (!($i++ % 4)) { ?>alpha<?php } ?> <?php if (!(($j++)+1 % 4)) { ?>omega<?php } ?>">
            <h3 style="margin-bottom:10px;"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
            <?php //the_excerpt() ?>
        </div>
    </div>
<?php endwhile; endif; ?>
票数 1
EN

Stack Overflow用户

发布于 2010-11-03 22:00:22

看起来像是我最近看到的事情的重演。(这不是你的错,它的名字很糟糕,你也无法搜索到它)。Help needed improving a foreach loop

我认为您要查找的内容应该更准确地描述为class=alpha on row 4k+1,class=omega on row=4k

我不熟悉您的if/while语法,而且嵌入式PHP让我有点不知所措。但我认为你想做的是:

在while循环之前将计数器初始化为0 ($i = 0)。在循环结束时递增它($i++)

我不知道你想把这些类放在哪里,但是把if ($i%4==1) class="alpha“和if(i%4==0) class="omega”(添加适当的php标签,因为某些原因它们不适合我)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4087639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档