WEBOPIXEL

WordPressで現在のページを除いた所属カテゴリーの最新記事一覧を表示する

Posted: 2011.05.18 / Category: WordPress / Tag: 

Wordpressをブログで使用する場合、記事の最後に関連記事を表示させることが多いと思います。
しかし、コーポレートサイトのお知らせページなどに使用する場合、関連していてもあんまり昔のお知らせが表示されるのはな、、というケースがあります。
ここでは、現在のページを除いた、所属しているカテゴリーの最新記事一覧を表示する方法をご紹介します。

Sponsored Link

コードと解説

関連記事に置き換えるものを考えてますので「single.php」に記述します。

single.php

 
	<?php
	$cats = get_the_category();
	//記事が2つ以上の場合表示
	if(($cats[0]->count) > 1 ):
	?>	
	<div>
		<h4>その他の記事</h4>
		<ul>
		<?php
			$posts = get_posts('numberposts=5&exclude='.get_the_ID().'&category='.$cats[0]->term_id);
			if($posts): foreach($posts as $post) : setup_postdata($post);
		?>
		<li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
		<?php endforeach; endif; ?>
		</ul>
	</div>
	<?php endif; ?>
	

「get_the_category」で所属しているカテゴリー情報を取得することができます。
この中の[count]がそのカテゴリーに所属している記事の数なので、この数が1より大きい(2以上)の場合のみ表示します。

「get_posts」で取得する記事の条件を指定します。

numberposts 表示する記事の数
exclude 除外する記事のID
category カテゴリー指定

excludeに現在記事のID(get_the_ID)、categoryには所属しているカテゴリーID($cats[0]->term_id)を指定します。
あとはいつものようにループして表示させるだけですね。