【WordPress】 カスタム投稿のタクソノミー別に記事一覧を表示させる

あっという間に11月です。
今年もあと2ヶ月!年末に向けてメチャ忙しいGORI Style、ドイです。
今夜はWPのカスタム投稿とタクソノミーを使った投稿記事の表示メモなど。

CMS構築ではよく「お知らせ」や「メニュー」など
通常の投稿記事とは別に管理して投稿したい場合があります。
お客様の案件ではよくあることなので、時と場合によって(たいていはご予算に合わせて^^;)
カスタム投稿の設定をします。

カスタム投稿内のタクソノミー(分類)別に、1ページの中(固定ページ内など)で
記事を一覧表示させたいことはよくあります。 いろいろ調べてみたら、「記事一覧(タイトル)」や「記事一覧(タイトル+画像)」というパターンが多くて
今回自分の案件には当てはまらず困っていました。 とりあえずいろいろ試してみて、これならうまくいきそう…という結果がこれ。

<br />
&lt;?php  $args=array(<br />
        'tax_query' =&gt; array(<br />
            array(<br />
                'taxonomy' =&gt; 'カスタム投稿で設定したタクソノミー名', //タクソノミーを指定<br />
                'field' =&gt; 'slug', //ターム名をスラッグで指定する<br />
                'terms' =&gt; array( 'カテゴリー名を指定' ) //表示したいタームをスラッグで指定<br />
            ),<br />
        ),<br />
        'post_type' =&gt; 'カスタム投稿の名前', //カスタム投稿名<br />
        'posts_per_page'=&gt; 100 //表示件数(-1で全ての記事を表示)<br />
    );<br />
?&gt;</p>
<p>&lt;?php query_posts( $args ); ?&gt;</p>
<p>&lt;?php if(have_posts()): ?&gt;</p>
<p>&lt;?php while(have_posts()):the_post(); ?&gt;</p>
<p>ページが存在する場合の指定をここに記述</p>
<p>&lt;?php endwhile; else: ?&gt;</p>
<p>ページが存在しない場合の指定</p>
<p>&lt;?php endif; ?&gt;</p>
<p>&lt;?php wp_reset_query(); ?&gt; // 最後にリセットして終了!<br />

思った値が出力されるまで、かなりハマったので次回のために備忘録として。



コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください