投稿の表示方法を指定する


最新の記事を○件表示したい、○○のカテゴリに属する記事を表示したい、
といった場合、query_posts関数などを使用して表示方法を指定します。
今回はquery_postsを使った方法をご紹介。

<ul>
<?php query_posts('showposts=5'); ?>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; endif; ?>
</ul>

上記のようにループとともに使用し、引数にて条件を指定していきます。
上記例では最新の記事のタイトルが5件表示されます。
ではいくつかその他の例を記載します。

<?php query_posts('p=10'); ?>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></hi>
<?php the_content(); ?>
<?php endwhile; endif; ?>

IDが10の記事のタイトル、本文を表示する

<ul>
<?php query_posts('showposts=5&cat=5'); ?>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; endif; ?>
</ul>

カテゴリーのIDに5が含まれる記事のタイトルを5件表示する。

<ul>
<?php query_posts('showposts=5&orderby=modified)'; ?>
<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; endif; ?>
</ul>

更新日順に新しい記事のタイトルを5件表示する。

その他様々な引数が用意されているので、詳細については公式サイトにてご確認を。

テンプレートタグ/query posts

query_postsを使ったときの注意点として一つ、
公式サイトにも書いてあるように複数使用すると、内容が正しく取得できない場合があります。
その場合にはwp_reset_query関数を使用すると正しく取得できます。

<ul>
<?php query_posts('showposts=5'); ?>
<?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>

タグ: , ,

記事公開日:
最終更新日:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)