サポート » 使い方全般 » 更新順にカテゴリ毎の最新記事を表示したい

  • いつも参考にさせていただいております。
    記事一覧において一度表示されたカテゴリの記事をループから除外したいのです。

    通常のループにて記事一覧を表示すると次のようになります。
     記事01(カテゴリA)
     記事02(カテゴリB)
     記事03(カテゴリC)
     記事04(カテゴリA)
     記事05(カテゴリD)
     記事06(カテゴリC)

    それを次のように表示させたいと考えております。
     記事01(カテゴリA)
     記事02(カテゴリB)
     記事03(カテゴリC)
     記事05(カテゴリD)

    どうぞよろしくお願いいたします。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    それってつまり各カテゴリーの新着1件を取れればいいってことですよね。
    ものすごく簡単に考えるなら、get_postsで

    <?php
      $news = get_posts( array(
         'category_name' => 'A',
         'posts_per_page' => 1
       ));
              foreach($news as $post) :
              setup_postdata($post);
    ?>
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php endforeach; ?>

    これをカテゴリの数だけ(この場合は4回)書けばいいかと。
    (※’category_name’ => ‘A’のところは変えてくださいねっ)

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    カテゴリが増えても、自動で1件ずつ取りたい場合は
    さらにget_terms(‘category’);を使ったループを書けば多分出来ます。

    トピック投稿者 wakakufu

    (@wakakufu)

    mypacecreatorさま

    ご返答ありがとうございます。
    提示いただいたコードにて希望の表示が可能になるのですが、
    記事の並び順について、希望と異なりました。
    説明がわかりにくくて申し訳ございません。

    1)記事一覧(ループ)は投稿順に表示したい
    2)表示する記事は各カテゴリで最新のもの

    ご提示いただいたコードでは、2)が実現するのですが、
    記事の並び順を投稿順に表示したい場合につまずいてしまいます。

    説明が難しく見当違いをさせてしまい申し訳ないです。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    おっと、そうでしたかー
    get_terms(‘category’);を使ったループだと、カテゴリのidとかスラッグとか投稿数とかでの並び替えは出来るんですけど、その中の投稿の日付順まで判定するとこまでは考えてなかったです。こまったな。考え直しだー

    トピック投稿者 wakakufu

    (@wakakufu)

    ほんと申し訳ないです。
    いろいろ、情報を集めているのですが、
    そういった事例がなくてこちらで相談させていただきました。
    また参考になる情報あればよろしくお願いします。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「更新順にカテゴリ毎の最新記事を表示したい」には新たに返信することはできません。