Определите каждые 4, используя модуль php - PullRequest
2 голосов
/ 20 марта 2012

Я пытаюсь определить каждый 4-й пост, чтобы вставить дополнительный код в свой макет в WordPress, используя метод модуля, но я просто не могу его получить.

Вот мой короткий пример:

<?php if (have_posts()) : ?>
<?php $count=0;?>   
<?php while (have_posts()) : the_post(); ?>

<div class="column">

<!--content-->

</div> 

    <?php
            if ($count % 4 == 0){     
                echo '<div class="clear"></div>';
            }      
            $count++;       
            ?>

<?php endwhile; ?>
<?php endif; ?>

все, что находится внутри цикла while.Что я делаю неправильно?Спасибо.

Ответы [ 2 ]

6 голосов
/ 20 марта 2012

Вы должны начать свой счетчик с 1, поскольку вы увеличиваете его в конце цикла:

<?php $count=1;?>

Либо так, либо вы увеличиваете его в начале цикла / перед проверкой:

<?php
        $count++; 
        if ($count % 4 == 0){     
            echo '<div class="clear"></div>';
        }            
?>
3 голосов
/ 20 марта 2012

Когда дело доходит до таких вещей, я всегда увеличиваю единицу в операторе if перед вызовом по модулю так:

if(($count+1)%4 == 0)

Таким образом, мне легко заметить, что утверждение естественно читается как "если текущий счет равен 4-му, тогда сделайте:"

...