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ではなくて投稿スラッグを指定して表示させたい場合は以前書いた以下の記事をどうぞ。

関連記事

  1. WordPressアップデートでアイコンが表示されない時の対処方法

    WordPress

    WordPress 3.8のアップデートで管理画面のアイコン画像が上手く表示されない時の対処方法

    先程、WordPress 3.8にアップデートしたら管理画面の上部バー…

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

    WordPress

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

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

  3. Last Updated Shortcode

    WordPress

    最後に更新された日付時間をショートコードで表示できるWordPressプラグイン「Last Upda…

    WordPressの記事内に最後に更新した日付時間を表示できるWord…

  4. ベストなWordPressテーマ集

    WordPress

    無料&有料のベストなWordPressテーマ集(2014年8月)

    ベストなWordPressテーマ集(無料&有料、2014年8月)「Be…

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

    WordPress

    WordPressをサーバーにインストールした後にやっておきたい手順リスト

    WordPressをサーバーにインストールした後にやっておきたい手順リ…

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

    WordPress

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

    WordPressで最新記事の一覧をウィジェットやプラグインを使わない…

最近の記事

  1. Olli
  2. 単語帳メーカー(Flashcard Maker App)
  3. 1Password 7
  4. 風に揺れる草

Facebookページ

PAGE TOP