wordpressのオリジナルテンプレートを作るときに使う、表示用タグ そのままメモ。
カテゴリーページで記事一覧(サムネイル画像付き)を表示させるタグです。<li>タグを使っていて、そのカテゴリーへの投稿が1記事もない場合は「準備中」と表示するようにしています。
<article>
<h3><?php single_archive_title(); ?>情報</h3>
<ul>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); //記事概要を表示 ?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>">
<?php
if (has_post_thumbnail()):
$title = get_the_title();
the_post_thumbnail(array(125,125), array('alt' => $title, 'title' => $title));
else: //アイキャッチ画像がなかった場合の処理
?>
<img src="<?php bloginfo('template_url'); ?>/images/no_thumb.png" title="<?php the_title(); ?>" alt="<?php the_title(); ?>" width="125" height="125" />
<?php endif; ?>
<br /><?php the_title(); ?></a>
<?php the_excerpt(); ?>
</li>
<?php endwhile; ?>
<?php else; ?>
<li><p>
<?php endwhile; ?>
<?php else; ?>
<li>準備中</li>
<?php endif; ?></p></li>
<?php endif; ?>
</ul>
準備中 と表示させる理由は、投稿記事がない場合に<ul>を表示させない方法が分からなかったから。準備中 と表示させない場合は、以下の部分を <?php endwhile; endif; ?> と書くことができます。
<?php endwhile; ?>
<?php else; ?>
<li><p>
<?php endwhile; ?>
<?php else; ?>
<li>準備中</li>
<?php endif; ?></p></li>
<?php endif; ?>
ループとかいろいろ、自分では書けないPHPタグを人様のタグを参考にしながら書いているので、丸ごとメモしておかないとわからなくなるのです。