get_posts()テンプレートタグを使った情報の取得と表示方法
get_posts() テンプレートタグを使った、記事タイトルなどの投稿データ取得と表示の方法です。
get_posts()とquery_posts()タグと使用方法は似ていますが、query_posts() 関数はメインの WordPress ループだけを変更するためのもので、get_posts()はメインループの他にループが必要な場合に使うタグという事です。
query_posts() 関数はメインの WordPress ループだけを変更するためのものです。新たなループを作るためのものではありません。メインループの他にループが必要な場合は、get_posts() を使ってください。テンプレートタグ/query posts – WordPress Codex 日本語版
使えるパラメータの値もquery_posts()と似ています。
パラメータとデフォルトの値
<?php $args = array(
'numberposts' => 5,
//取得する投稿の数
'offset' => 0,
//先頭から何件の投稿を除外するか
'category' => ,
//指定したカテゴリID の投稿のみを返す。除外したい時は-を付ける
'orderby' => 'post_date',
//様々な値で並べ替える
'order' => 'DESC',
//$orderby でのソート方式。'ASC' - 昇順(低から高)。'DESC' - 降順(高から低)。
'include' => ,
//表示したい投稿のID
'exclude' => ,
//表示したくない投稿のID
'meta_key' => ,
'meta_value' => ,
//カスタムフィールドのキーと値を持つ投稿のみ表示。両方のパラメータ指定が必要
'post_type' => 'post',
//表示する投稿のタイプ。post、page、any(全て)等
'post_parent' => ,
//このIDの投稿の子のみを表示
'post_status' => 'publish'
//指定したステータスの投稿を表示
); ?>
参照:
get_posts:WordPress私的マニュアル
テンプレートタグ/get posts – WordPress Codex 日本語版
Template Tags/get posts « WordPress Codex
get_posts:WordPress私的マニュアル
テンプレートタグ/get posts – WordPress Codex 日本語版
Template Tags/get posts « WordPress Codex
使用例
get_posts()はデータをオブジェクト形式で返します。例えば最近の記事5件のタイトルと記事リンク・日付をトップページに表示するにはforeach文を使い下記のように記入します。
<ul>
<?php
$postslist = get_posts('numberposts=5&orderby=post_date&order=DESC"');
//$postslistにget_postsで取得したデータを入れる
foreach ($postslist as $post) : setup_postdata($post);
//foreach文で繰り返し出力する
?>
<li><?php the_date(); ?><a href="<?php the_permalink();?>"><?php the_title(); ?></a>
</li>
<?php endforeach; ?>
</ul>
No Comments & Tracbacks