joppot

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

プログラミング

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

投稿日:


wp_query_post_index_thumb

概要

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

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

前提

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


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

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

関連記事

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

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

wordpress skeletonを使った開発環境の構築

はじめに みなさんこんにちはcandleです。wordpressは大変便利なのですが、いまいちgitで管理するのが難しいものです。 というのも、wordpress全体をgit管理対象にしてしまうと、w …

ruby on railsのデータベースのテーブルにカラムを追加、削除する

概要 みなさんこんにちはcandleです。今回はrailsのカラムの追加の仕方を紹介します。 本当にrailsは規約が多くて、多くて、なんでデータベースを直接いじれないんだと。 早速やっていきましょう …

railsのform_forとstrong parametersを使用して画像をアップロードする

概要 みなさんこんにちはcandleです。今回はrailsのform_forを使って、railsプロジェクトのpublicディレクトリに画像をアップロードしてみましょう。 form_forは基本的にデ …

railsのrakeで作成したカラムの型とdefault値を変更する方法

概要 みなさんこんにちはcandleです。今回はrakeコマンドのややこしいところを扱います。 rakeコマンドはわりと便利で、データベースのカラムの追加や型の変更をマイグレーションファイルから読み込 …

  • English
  • 日本語

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