読者です 読者をやめる 読者になる 読者になる

ショウジンブログ

Learn as if you will live forever, Live as if you will die tomorrow.

複数のカスタム投稿及びカスタム分類を指定してひとつのループで出力@WordPress

WordPressカスタマイズ
Sponsored Links

異なるカスタム投稿、カスタム分類を複数指定して同じループにまとめて出力する例です。

配列のpost_typeで投稿タイプを指定。(複数の場合にはカンマ区切りで)

tax_queryでrelationはORを指定し、taxonomy、field、termsでカスタム分類を指定しています。

本題とは関係ありませんが、投稿タイトルの文字数を指定して、指定した文字数以上は丸める処理も記述していますので、不要であればこの処理はなくして、普通にタイトルを出力させます。

<?php
$args = array(
    'post_type' => array('info-nicchu', 'info-ja'), /* 投稿タイプを指定 */
    'tax_query' => array(
        'relation' => 'OR',
        array(
            'taxonomy' => 'info-course-category', /* 指定したい投稿タイプが持つカスタム分類を指定 */
            'field' => 'slug',
            'terms' => 'jpcn', /* 指定したカスタム分類が持つタームのスラッグを指定 */
        ),
        array(
            'taxonomy' => 'info-category', /* 指定したい投稿タイプが持つカスタム分類を指定 */
            'field' => 'slug',
            'terms' => 'info', /* 指定したカスタム分類が持つタームのスラッグを指定 */
        ),
    ),
    'paged' => $paged,
    'posts_per_page' => '5' /* 5件を取得 */
); ?>
<?php query_posts( $args ); ?>
<?php if (have_posts()) : ?>
     <?php while (have_posts()) : the_post(); /* ループ開始 */ ?>
    <dl>
        <dt><a href="<?php the_permalink(); ?>"><?php echo get_post_time('Y年m月d日'); ?></a></dt>
        <dd><a href="<?php the_permalink(); ?>"><?php if(mb_strlen($post->post_title)>30) { $title= mb_substr($post->post_title,0,30) ; echo $title. … ;
} else {echo $post->post_title;}?></a></dd>
    </dl>
     <?php endwhile; ?>
<?php else : ?>
    <dl>
        <dt>記事がありません</dt>
        <dd>表示する記事はありませんでした。</dd>
    </dl>
<?php endif; ?>
<?php wp_reset_query(); // ループをリセット ?>

一歩先にいくWordPressのカスタマイズがわかる本

一歩先にいくWordPressのカスタマイズがわかる本

  • 作者: 相原知栄子,大曲仁,プライム・ストラテジー株式会社
  • 出版社/メーカー: 翔泳社
  • 発売日: 2016/04/09
  • メディア: 大型本
  • この商品を含むブログを見る