[WordPress]sidebar.php等で出力してる新着記事リストを、その記事が属しているカテゴリのものだけにする(※情報古いです)

※自分で考えたコードじゃなくて、公式フォーラムのスレッドのコピペであることをあらかじめ断っておきます。

※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 を使った方が良いです!!

コメントをどうぞ

メールアドレス (必須・公開されません)
コメント本文

  • スパム・迷惑コメント投稿防止のため、メールアドレスの入力が必須ですが、公開はされません。何卒ご協力のほどお願いいたします。
  • 投稿いただいたコメントは管理者のチェック後掲載しておりますので、即時には反映されません。
  • 記載内容に関する批判や間違いの指摘などはそのまま掲載する方針ですが、投稿内容と無関係な誹謗中傷、一方的な罵詈雑言の場合は削除させていただく可能性があります。
  • 通常業務の合間にコメントチェックをしておりますので、すべてのコメントへのお返事が出来ない場合もございます。あらかじめご了承ください。
  • 管理人個人への連絡等は、コメント欄ではなくコンタクトフォームをご利用ください。

書籍を執筆しました

WordPress 標準デザイン講座【Version 4.x対応】


翔泳社さんより、2015/02/27発売しました。2年経ちますのでもう賞味期限切れだとは思いますが、一応実績として...

寄付歓迎(・ω<)☆

当ブログの記事があなたの役に立ったら、気が向いたらでいいのでドネーションいただけると更新の励みになります!
気が向いた方はこちらから

ブログ内検索