CMSブログソフトWordPressの基本操作と使い方
WordPress3.0.4 ADPHIC Co,.Ltd. SINCE.2008.10.15

HOMEIllustratorのツボadphicContact-Mail

CONTENTS
テンプレートタグ一覧
AD LINK
Fotolia
500万点以上のロイヤリティフリー画像が、なんと100円から使えるイメージバンク。印刷レベルの写真でも500円。ちょっと素材が必要なときに便利です。
TIPS
CATEGORY : ループとループの制御用タグ | UPDATE : 2011.03.01

get_postsのマルチループで、
コンテンツデータを表示する

ループ条件を指定して複数のループを設置したい場合、query_posts を使った複数のループはWordPressサイトの設定を変更することになり、いろいろと不具合が生じる可能性が高いようです。
表示条件を指定したコンテンツメニューやカテゴリーメニューを、複数設置する場合は get_posts を使います。

TEMPLATE-TAG<テンプレートタグ>
コンテンツ情報を表示するループ(複数設置可能)
<?php global $post; $myposts = get_posts('A&B&C…クエリ形式で記述');
foreach($myposts as $post) : setup_postdata($post); ?>

<!—— 情報取得のテンプレートタグを記述 ——>

<?php endforeach; ?>

パラメータは query_posts と同じものもありますが、微妙に違っていたりしますのでご注意ください。

PARAMETER<パラメータ>
  1. categoryt : 表示する記事をカテゴリー(ID数値)で指定。
  2. category_name : 表示する記事をカテゴリー(スラッグ名)で指定。
  3. numberposts : 表示する記事の件数を指定。
    数字 : 指定件数分の記事を表示。(初期設定:5)
    -1 : すべての記事を表示。
  4. order : 表示する並び順を指定。
    ASC : 昇順で表示。
    DESC : 降順で表示(初期設定)
  5. orderby : 並び順の基準を指定。
    date : 日付順で並べる(初期設定)
    modified : 更新日順で並べる。
    category : カテゴリー順で並べる 。
    title : タイトル順で並べる。
    content : コンテンツ順で並べる。
    ID : ID順で並べる。
    name : コンテンツスラッグ順で並べる(※間違っているかも…)
    author:投稿者のID順で並べる。
    rand:ランダムにする。
    parent : 親ベージのID順で並べる(ページ記事のみ有効)
    menu_order:ページ投稿画面の、ページ属性で指定した順で並べる(ページ記事のみ有効)
  6. include:表示する記事のID数値。
  7. exclude:表示しない記事のID数値。
  8. meta_key:指定したカスタムフィールドの名前の記事を表示。
  9. meta_value:指定したカスタムフィールドの値の記事を表示。
  10. post_type:指定したタイプの記事を表示。
    post : 投稿記事(初期設定)
    page : ベージ記事。
    attachment : メディア。
    any : すべての記事。
  11. tag:指定したタグスラッグの投稿を表示。複数タグのカンマ区切りはいずれかに、空白区切りはすべてにマッチした投稿を表示。
  12. offset:先頭から表示しない記事の数を指定。

※パラメータは一部を掲載しています。

TEMPLATE-TAG EXAMPLE<記述例>
<?php global $post; $myposts = get_posts('numberposts=3&category=16&orderby=title&order=ASC'); foreach($myposts as $post) : setup_postdata($post); ?>
<a href="<?php the_permalink(); ?>"><?php the_title_attribute('before=・'); ?></a><br />
<?php endforeach; ?>

パラメータ:カテゴリー16の投稿記事を、タイトルの昇順で3件表示します。タイトルはパマーリンク付きで取得しています。

EXAMPLE RESULT<記述例の結果>

get_posts はパラメータの数も多いので、query_posts との組み合わせや使い分け、またメインループの中でループを実行するなど、複雑なサイトデザインが容易にできる可能性が高くなります。

INDEX