joppot

コピペで絶対動く。説明を妥協しない

プログラミング

wordpressのwp_queryでpost投稿の記事一覧を取得する

投稿日:

Pocket

wp_query_post_index_thumb

概要

みなさんこんにちはcandleです。
最近はwordpressの開発を行っており、そこで、試行錯誤したwp_queryを使った記事一覧の取得の仕方を紹介します。wordpressは少し前まで、query_postsで記事を取得して、ループを回し、記事を表示していましたが、非推奨になりました。おそらく、パフォーマンスの問題でしょう。

新しくできたのが、wp_queryでしょう。これを使って記事一覧を表示します。

前提

wordpressが動く
適当なテンプレートがある。

SPONSORED LINK


wp_queryで記事一覧を表示する

任意のphpファイルに以下を記述すれば、投稿の一覧を取得できます。

<?php
  $args = array(
    'post_type' => 'post',
    'posts_per_page' => 10
  );
  $st_query = new WP_Query( $args );
?>
<?php if ( $st_query->have_posts() ): ?>
  <?php while ( $st_query->have_posts() ) : $st_query->the_post(); ?>
    <?php the_time( 'Y年m月d日' ); ?><br />
    <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><br />
  <?php endwhile; ?>
<?php else: ?>
  <p>新しい記事はありません</p>
<?php endif; ?>

$argsで必要なパラメータを定義します。
WP_Queryのインスタンスを作って、それで投稿を確認し、ループを回しています。

post_typeは取得する投稿の種類を指定します。
記事の場合は「post」になります。

posts_per_pageは取得する投稿の数です。
サンプルでは10記事で指定してます。

wordpressqp_querypost_index
固定ページ一覧が欲しい場合はpost_typeをpageにすればおkです。

wp_queryの他のオプションは下のサイトに詳しく載っています。
http://notnil-creative.com/blog/archives/1288

まとめ

記事の取得はwordpressの基本なので、ここをマスターしましょう。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-プログラミング
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Rails pluginを使ったgemの作り方[3](vendor/assets 読み込み編)

概要 みなさんこんにちはcandleです。今回はgemでvendorを作成し、それをrailsアプリケーション側で読み込ませる為の方法を紹介します。 よく、gemをインストールすると「app/asse …

pythonのpipでfabricをインストールする

概要 みなさんこんにちはcandleです。今回はpipでデプロイメントツールのfabricをインストールしたいと思います。 前提 pipがインストールされている

railsのgonで別ページでリロード後turbolinksで移動したら変数がundefindする場合の対処

概要 (追記 2016/05/18 この方法を行うと、turbolinksで問題が起きました。 turbolinksで移動した回数だけ、javascriptが実行されてしまいました。 例えば、 < % ...

Rails pluginを使ったgemの作り方[1](基本設定編)

概要 みなさんこんにちはcandleです。今回からできればシリーズ物として、railsのgemを作っていこうと考えています。なぜかgemの作り方の詳しい解説サイトが日本語で少ないので未だgemを満足に …

Mac OS 10.9 MarvericksにHomebrewでOpencv2.4.7をインストールする

概要 みなさんこんにちはcandleです。今回はhomebrewを使用してopencvをインストールします。 前回macports経由でインストールする方法がうまくいかない事を記事にしましたが今回の方 …

  • English
  • 日本語

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

スポンサードリンク

アーカイブ