Blog

【WordPress】固定ページに関連記事一覧を複数表示

2015/06/16

固定ページ Wordpress

WordPressのカスタムで固定ページ(例:ゲーム)に関連する(カスタム投稿の)関連記事一覧を表示する依頼がありました。

忘れないうちに備忘録として残します。

単一のターム一覧を表示
ゲーム(game)→スポーツ(sports_game)→野球(baseball)を表示

<?php $q = new WP_Query(array('post_type' => 'game')); ?>
<?php if($q->have_posts()): ?>
    <ul>
    <?php
        $Q = array(
        'posts_per_page'  => '6',
        'tax_query' => array(
        array(
            'taxonomy' => 'sports_game',//タクソノミー
            'field' => 'slug',
            'terms' => 'baseball', //ターム
            ),
        ),
        'orderby' => 'date',
        'order' => 'DESC',
        );
        query_posts($Q);
    ?>
    <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
        <li>
        ここに表示するタグ
        </li>
    <?php endwhile; ?>
    <?php endif; ?>
    </ul>
<?php endif; ?>
<?php wp_reset_query(); ?>

複数のターム一覧を表示
ゲーム(game)→スポーツ(sports_game)→野球(baseball)とテニス(tennis)を表示

<?php $q = new WP_Query(array('post_type' => 'game')); ?>
<?php if($q->have_posts()): ?>
    <ul>
    <?php
        $Q = array(
        'posts_per_page'  => '6',
        'tax_query' => array(
        array(
            'taxonomy' => 'sports_game',//タクソノミー
            'field' => 'slug',
            'terms' =>  array( 'baseball','tennis' )//タームの配列
            ),
        ),
        'orderby' => 'date',
        'order' => 'DESC',
        );
        query_posts($Q);
    ?>
    <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); $loopcounter++;?>
        <li>
        ここに表示するタグ
        </li>
    <?php endwhile; ?>
    <?php endif; ?>
    </ul>
<?php endif; ?>
<?php wp_reset_query(); ?>

ちょっと怪しいコードではありますが、これで無事表示できました。

page-game.phpというゲーム固定ページ用のテンプレートを作成して、
上記のソースコードを張り付けて完了です。



カテゴリー

月間アーカイブ

MORE

ミュージシャンズ・プラザ

神社仏閣ホームーページ制作

ホームページ制作問合せ