ブログを3つの列に分割する必要があります。そのために、私は書いた:
<?php $i = 0; ?>
<div class="onethird">
<?php if (have_posts()) : while(have_posts()) : $i++; if(($i % 3) == 0) : $wp_query->next_post(); else : the_post(); ?>
<?php get_template_part( 'content', 'category' ); ?>
<?php endif; endwhile; endif; ?>
</div>
<?php $i = 0; rewind_posts(); ?>
<div class="onethird">
<?php if (have_posts()) : while(have_posts()) : $i++; if(($i % 3) == 1) : $wp_query->next_post(); else : the_post(); ?>
<?php get_template_part( 'content', 'category' ); ?>
<?php endif; endwhile; endif; ?>
</div>
<?php $i = 0; rewind_posts(); ?>
<div class="onethird last">
<?php if (have_posts()) : while(have_posts()) : $i++; if(($i % 3) == 2) : $wp_query->next_post(); else : the_post(); ?>
<?php get_template_part( 'content', 'category' ); ?>
<?php endif; endwhile; endif; ?>
</div>
それは非常に悪いコードだと確信していますが、それは私が思いついた最高のものでした。次に、重複した投稿の問題に気づきました。繰り返しますが、グーグルをたくさんした後、間違っています:
<?php $i = 0; $dupe = array(); ?>
<div class="onethird">
<?php if (have_posts()) : while(have_posts()) : $i++; if( (($i % 3) == 0) && (!in_array($post->ID, $dupe)) ) : $wp_query->next_post(); else : the_post(); ?>
<?php $dupe[] = $post->ID; echo $post->ID ?>
<?php get_template_part( 'content', 'category' ); ?>
<?php endif; endwhile; endif; ?>
</div>
<?php $i = 0; rewind_posts(); ?>
<div class="onethird">
<?php if (have_posts()) : while(have_posts()) : $i++; if( (($i % 3) == 1) && (!in_array($post->ID, $dupe)) ) : $wp_query->next_post(); else : the_post(); ?>
<?php $dupe[] = $post->ID; echo $post->ID ?>
<?php get_template_part( 'content', 'category' ); ?>
<?php endif; endwhile; endif; ?>
</div>
<?php $i = 0; rewind_posts(); ?>
<div class="onethird last">
<?php if (have_posts()) : while(have_posts()) : $i++; if( (($i % 3) == 2) && (!in_array($post->ID, $dupe)) ) : $wp_query->next_post(); else : the_post(); ?>
<?php $dupe[] = $post->ID; echo $post->ID ?>
<?php get_template_part( 'content', 'category' ); ?>
<?php endif; endwhile; endif; ?>
</div>
これで、カウンターと、が無視in_array
され、3列すべてにすべての投稿が表示されます。
誰かが3列に投稿を表示するためのより良い解決策を持っているなら、それも歓迎されます!