[WP]WordPressで「投稿記事をランダムで○件」表示させる方法
スポンサード
パラメータですが、
また、
今回は10件なので
また、
スポンサード
WordPressでブログや企業サイトを作っていると、例えば「記事を10件出力する」ようなコトを頻繁にやる訳ですが、query_posts()
や get_posts()
を使うことで「投稿記事を○件出力する」という処理が可能になります。
今回はそれぞれのテンプートタグを使って記事を「ランダム」で出力する方法を紹介します。
query_posts() で記事をランダムで出力する
例えば「投稿記事を10件ランダムで出力する」場合はこんな感じです。<?php query_posts('showposts=10&orderby=rand');?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <h2><a href="<?php the_permalink();?>"><?php the_title();?></a></h2> <?php endwhile; endif; ?>上記例では、リンク付きでタイトルだけを出力していますが、
<?php query_posts('showposts=10&orderby=rand');?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <h2><a href="<?php the_permalink();?>"><?php the_title();?></a></h2> <?php the_content();?> <?php endwhile; endif; ?>で投稿本文も合わせて取って来れます。
パラメータですが、
showposts
で「出力する記事数」を指定できます。今回は10件なので showposts=10
です。また、
orderby=rand
にすると、記事をランダムで出力できるようになります。参考ページ
テンプレートタグ/query posts
テンプレートタグ/query posts
get_posts() で記事をランダムで出力する
今度はget_posts()
を使う方法です。get_posts()
は query_posts()
と違ってグローバル変数には影響を与えないなど、ちょっと小難しい違いがありますが、メインループ以外(サイドバーやフッターとか)で記事を○件出力するなんて場合に使ったりします。query_posts()
のサンプル同様「投稿記事を10件ランダムで出力する」方法ですが、こんな感じのソースになります。<?php $args = array( 'numberposts' => 10, 'orderby' => 'rand' ); $rand_posts = get_posts( $args ); foreach( $rand_posts as $post ) : ?> <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> <?php endforeach; ?>
numberposts
で「出力する記事数」を指定します。今回は10件なので
'numberposts' => 10
です。また、
'orderby' => 'rand'
にすることにより記事をランダムで出力できるようになります。参考ページ
テンプレートタグ/get posts
テンプレートタグ/get posts
スポンサード
コメント