【wordpress】ループを複数使うには、WP_Queryかget_posts

wordpress

前回の記事で、カスタム投稿タイプの情報を各インデックスページにて出力する記事を書きましたが、今回は、そのときに書ききれなかったループ処理について今さならがらメモる。

前回の記事「wordpress:固定ページ内にカスタム投稿タイプ毎の記事を出力する」では固定ページ(page.php)にカスタム投稿タイプの出力の設定をしたので、下記のように記述した

post_name);
if(have_posts()): while(the_posts()): the_post();
?>
ここに出力

当然ながら上記の記述だとカスタム投稿タイプの情報が表示されるので、仮に上記ループ内で「the_title()」と記述してもカスタム投稿タイプで投稿した情報のタイトルが出力される。

しかし固定ページのタイトルとかコンテンツを表示したいとなると下記のようになる。


//固定ページの情報を出力

//query_postでpost_typeを指定 query_post("post_type=".$post->post_name); if(have_posts()): while(the_posts()): the_post(); ?> ここに出力

上記のようにループを2回使ってるのだが、1ページに複数ループを使用する場合は、「WQ_Query」や「get_posts」を利用するらしい。様はquery_postsはページに一回しか使えないらしい。詳しくは下記のブログ

//固定ページの情報を出力

  
    
    


//カスタム投稿タイプの情報を出力
$post->post_name
); ?>

have_posts()): $myposts->the_post(); ?>