私のクライアントは、ホームページを次のサイトに似たものに変更しようとしています: http://www.eatliverun.com/ ここでは、最新の投稿が 1 つの列で完全に表示され、他の投稿は 2 つの列で抜粋されています。
彼女は、最近の投稿を 1 つだけ表示し、残りを 2 列形式で表示したいと考えています。これを正しく達成する方法がわかりません。
彼女のウェブサイトはhttp://pamelastable.com/にあります。
私のクライアントは、ホームページを次のサイトに似たものに変更しようとしています: http://www.eatliverun.com/ ここでは、最新の投稿が 1 つの列で完全に表示され、他の投稿は 2 つの列で抜粋されています。
彼女は、最近の投稿を 1 つだけ表示し、残りを 2 列形式で表示したいと考えています。これを正しく達成する方法がわかりません。
彼女のウェブサイトはhttp://pamelastable.com/にあります。
カウンターをループに統合すると、このレイアウトを実現するのに簡単に役立ちます。次のように試してみてください(注:「6列」クラスは、12列のグリッドで2列のレイアウトを表します):
<?php $count = 1; ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php if ($count == 1) { ?>
<article>
<div>
<h2><a href="<?php the_permalink(); >"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
</div>
</article>
<?php $count++; ?>
<?php } else { ?>
<?php if($count % 2 == 0) { ?>
<div>
<? } ?>
<div class="six columns">
<article>
<div>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
</div>
</article>
</div>
<?php if($count % 2 == 1) { ?>
</div>
<? } ?>
<?php $count++; ?>
<? } ?>
<?php endwhile; else: ?>
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>
カウンターを使用して、現在のポスト番号を確認してください。
<?php
if (have_posts()) {
$i = 0;
while (have_posts()) {
the_post();
if (++$i == 1) {
echo '<div class="entry-large">';
} else {
echo '<div class="entry-small">';
}
the_content();
echo '</div>'
}
}
ループにカウンターを追加し、最初の繰り返しで html のスタイルを変えるだけです。
<?php $i = 0; while ( have_posts() ) : the_post(); //inside loop ?>
<?php if ($i++ == 0) : ?>
<div>First Post</div>
<?php else: ?>
<div>Other Posts</div>
<?php endif; ?>
<?php endwhile; ?>
index.php またはその他のテンプレート ファイルで^