サポート » 使い方全般 » 同じカテゴリ内の関連記事表示で記事が少ない場合

  • iguigu

    (@iguigu)


    関連記事を表示するのに下記の様に記述しましたが、
    ここから同じカテゴリの記事が2件以下の場合、
    全てのカテゴリから1つ取ってくるということにしたいのですが、
    配列の書き方がわかりません、

    ご教授願いします。

    	<?php
    //カテゴリ情報から関連記事をランダムに呼び出す
    $categories = get_the_category($post->ID);
    $category_ID = array();
    foreach($categories as $category):
      array_push( $category_ID, $category -> cat_ID);
    endforeach ;
    $args = array(
      'post__not_in' => array($post -> ID),
      'posts_per_page'=> 3,
      'category__in' => $category_ID,
      'orderby' => 'rand',
    );
    $query = new WP_Query($args); ?>
      <?php if( $query -> have_posts() ): ?>
      <?php while ($query -> have_posts()) : $query -> the_post(); ?>
      
    コンテンツ
    	 
    <?php endif; ?>
    <?php endwhile; ?>
    
    <?php else:?>
      <p>記事はありませんでした</p>
      
    
    <?php endif; //openclose ?>		
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • 水野史土

    (@ounziw)

    公式ドキュメントに、
    https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/WP_Query

    $found_posts
    現在のクエリ変数に一致する投稿の合計数。

    とあるので、これを使ったら良いのではないでしょうか。

    gblsm

    (@gblsm)

    @iguigu さんが

    配列の書き方がわかりません、

    と書いておられるのを見て、やりたいことを推測すると・・・

    WP_Query のパラメータ(配列)を工夫して、WP_Qeury を一度呼び出すだけで

    同じカテゴリの記事が2件以下の場合、
    全てのカテゴリから1つ取ってくるということにしたい

    というところでしょうか。いかがですか、@iguigu さん?

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「同じカテゴリ内の関連記事表示で記事が少ない場合」には新たに返信することはできません。