joppot

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

プログラミング

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

投稿日:

Pocket

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

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

関連記事

sphinxでpythonのクラスや関数のドキュメントを自動生成する

概要 みなさんこんにちはcandleです。今回はpythonのSphinxを使ってクラスや関数の説明を自動生成します。 前提 Python3を使って説明しますが、おそらくpython2でも動くと思いま …

ruby on railsのckeditorの画像のアップロード先をcarrierwaveとfogを使ってS3にする

概要 railsのckeditorはデフォルトでrailsのuploadsフォルダにアップロードしますが、 それだとサーバの容量を取ってしまうので、画像のアップロード先をS3に上げてみたいと思います。 …

wysiwygエディタのSquire editorのサンプルを作成する

概要 みなさんこんにちはcandleです。 今回オープンソースのsquireエディタをhtmlに手動で導入したいと思います。 squireはオープンソースの便利なwysiwygエディタです。 カスタマ …

wordpressで任意のサブカテゴリー全てをget_categoriesで取得する

概要 みなさんこんにちはcandleです。今回はwordpress開発でよくあるサブカテゴリーを全て取得する方法を紹介します。 カテゴリー一覧をサイドバーに表示したい時があります。この時、get_ca …

railsのaws-sdk gemを使ってs3のファイルを削除する

by martinak15 概要 みなさんこんにちはcandleです。今回はs3にアップロードされている画像ファイルをrailsのaws-sdk gemを使用して削除してみたいと思います。 記事中で開 …

  • English
  • 日本語

プロフィール


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

スポンサードリンク

アーカイブ