カテゴリ: WordPress

WordPressで特定のカテゴリの新着情報を載せたい

WordPressで作ったホームページにかかわらず、トップページによく「新着情報」って載ってるサイトあると思います。

「お知らせ」でも「ニュース」でもいいんですけど、ブログ全体の新着を載せるんじゃなくて特定のカテゴリの記事だけ5件とか10件だけ載せたいというときの方法を紹介します。WordPressなら簡単にできます。

<!--?php if(have_posts()): while(have_posts()): the_post(); ?-->
	<!--?php get_template_part('content'); ?-->
<!--?php endwhile; endif; ?-->

通常は上記のような感じで記事をループして読み出します。
この例だと記事の内容をまるごと読み込んでしまうので要約だけ載せたいときは下記のようにしてcontent-excerpt.phpを読み込んでください。
※content-excerpt.phpは別途用意しておいてください。

<!--?php if(have_posts()): while(have_posts()): the_post(); ?-->
	<!--?php get_template_part('content','excerpt'); ?-->
<!--?php endwhile; endif; ?-->

それで、WordPressで特定のカテゴリの記事だけ表示させる方法ですが、先ほどのコードに下記のように追加をしてください。

<?php query_posts("cat=1&showposts=10"); ?>
<?php if(have_posts()): while(have_posts()): the_post(); ?>
	<?php get_template_part('content','excerpt'); ?>
<?php endwhile; endif; ?>

query_postsの引数になっているcat=1&showposts=10というのはカテゴリIDが1の記事を10件表示させるという意味です。
この引数はカテゴリIDだけでなく、下記のようにカテゴリのスラッグ名で指定することも可能です。

<?php query_posts("category_name=news&showposts=10"); ?>
<?php if(have_posts()): while(have_posts()): the_post(); ?>
	<?php get_template_part('content','excerpt'); ?>
<?php endwhile; endif; ?>

複数カテゴリを選びたいときは以下のように指定してください。

<?php query_posts("cat=1,2,3&showposts=10"); ?>
<?php if(have_posts()): while(have_posts()): the_post(); ?>
	<?php get_template_part('content','excerpt'); ?>
<?php endwhile; endif; ?>

« »

購読に便利なRSS登録をどうぞ

RSSリーダーで購読する

ぜひFacebookページにご参加下さい!