※自分で考えたコードじゃなくて、公式フォーラムのスレッドのコピペであることをあらかじめ断っておきます。
※2012.10.27追記あり
ウィジェットではなくsidebar.phpに直書きで、「新着記事一覧」を表示させていました。
それを、「お知らせ」カテゴリーの記事を見てるときは「お知らせ」カテゴリーだけの新着5件を、
「日記」カテゴリーの記事を見ている時は「日記」カテゴリーだけの新着5件をさせるようにしたかったのです。
でも、sidebar-news.phpとかいちいち個別に作るのは面倒。
それで。
変更前
<ul> <?php wp_get_archives('type=postbypost&limit=5'); ?> </ul>
↓
変更後
<ul> <?php foreach((get_the_category()) as $cat) { $cat_id = $cat->cat_ID ; break ; } $query = 'cat=' . $cat_id. '&showposts=5'; query_posts($query) ; ?> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title()?></a></li> <?php endwhile; endif; ?> <?php wp_reset_query(); ?> </ul>
できた。
出典はコレ↓
WordPress › フォーラム » single.phpに同一カテゴリー記事一覧をナビゲーションとして表示したい。
※2012.10.27追記
サイドバーで使うなら、query_posts じゃなくて get_posts を使った方が良いです!!