WordPressで投稿IDを指定した記事をランダム表示

WordPress

WordPressで複数の投稿ID(記事ID)を指定した記事をランダムで表示させるやり方

個人的にやってみたかったので備忘録。WordPressで自分が作った関数の引数に複数の投稿ID(記事ID)を指定して、その記事たちをランダム順に並べて表示させるやり方です。投稿IDを変えるだけで表示される記事も変わるので管理が楽になります。

[ads_center]

WP_Queryを使うやり方

やり方は、WP_Queryを使って投稿IDの配列から新しくループを作成していきます。$post_idsに自分が表示したい記事の投稿IDを指定するようにします。

自分で作ったループを初期状態に戻すために、wp_reset_postdata()も忘れずに記述しておきます。

function post_id_random($post_ids) {
    $args = array(
        'post__in' => $post_ids,
        'orderby' => 'rand'
    );
    $post_ids_query = new WP_Query($args);

    if($post_ids_query->have_posts()) {
        while($post_ids_query->have_posts()) {
            $post_ids_query->the_post();
            echo '<ul>';
            echo '<li><a href="';
            echo the_permalink();
            echo '">';
            echo the_title();
            echo '</a></li>';
            echo '</ul>';
        }
        wp_reset_postdata();
    } else {
        echo '<p>該当記事がない場合はここが表示</p>';
    }
}

そして、表示したい場所に以下のように記述します。ここでは、例として「10, 11, 12」の投稿IDを指定しています。

$post_ids = array(10,11,12);
post_id_random($post_ids);

これで、投稿IDが10、11、12の3つの記事をランダムの順番で並べて表示させることができます。

これがどういった時に役立つのかというと、例えばオススメ記事として自分が見せたい記事を複数並べたい、なんて時に使えます。ちょっと変更したくなったら投稿IDを変えるだけなので比較的管理も楽になるはずです。

以下のサイトが参考になりました。

ちなみに、投稿IDではなくて投稿スラッグを指定して表示させたい場合は以前書いた以下の記事をどうぞ。

WordPressのログイン時のツールバーWordPressでログイン中に上部ツールバーを表示・非表示にする設定方法前のページ

背景に複数の画像を設定してパララックスのスクロールを実装できるjQueryプラグイン「qpScroll」次のページqpScroll

関連記事

  1. WordPressでパンくずリストを設置

    WordPress

    WordPressでパンくずリストをプラグインなしで設置する簡単なやり方

    WordPressでパンくずリストをWebサイトに設置したいといった時…

  2. Daily Dish

    WordPress

    写真が映える2カラムのシンプルでスッキリしたWordPressテーマ「Daily Dish」

    Daily DishというWordPressテーマがとてもカッコよかっ…

  3. WordPressのログイン時のツールバー

    WordPress

    WordPressでキーワードを登録しておくと自動でリンクをつけてくれるプラグイン「WP Keywo…

    なかなか便利だったのでご紹介します。WordPressで自分が登録した…

  4. WordPress

    WordPressで特定の記事やページにカスタムフィールドで指定したCSS・JSファイルを読み込む

    個人的に今後ちょっと使いそうな機能だったのでメモがてらエントリー。Wo…

  5. WordPressのログイン時のツールバー

    WordPress

    WordPressでランダム記事の一覧をプラグインを使わないで表示させるやり方

    先日、WordPressで最新記事の一覧をプラグインを使わないで表示さ…

  6. ツールバーが表示されない時の対処方法

    WordPress

    WordPressのツールバー(管理バー)が表示されない時の対処方法

    WordPressで自分のサイトにログインすると画面上部にツールバー(…

最近の記事

  1. SRS-XB43
  2. Nu:kin
  3. フィールグッドシャワー

アーカイブ

PAGE TOP