当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムや WordSlack #docs チャンネルでお知らせください。</p>
万が一、当サイトで重大な問題を発見した際などは、フォーラムや WordSlack #docs チャンネルでお知らせください。</p>
関数リファレンス/wp reset postdata
提供: WordPress Codex 日本語版
< 関数リファレンス
この関数は、new WP_Query
を使って二番目のクエリを実行した後に、メインクエリの $post
グローバル変数を復元するために使用します。つまり $post
がメインクエリの現在の投稿になります。
メインクエリのループと二番目のクエリのループは次のように異なります:
- メインループは、URL によるリクエストに基づいたクエリが、テンプレートが読み込まれる前に実行されます。
- 二番目のループは、テーマのテンプレートやプラグインのファイルの中で実行されるクエリ(
new WP_Query
を使う)です。
使い方
<?php wp_reset_postdata(); ?>
パラメータ
この関数はパラメータを持ちません。
戻り値
この関数は値を返しません。
用例
<?php // 引数の例 $args = array( 'posts_per_page' => 3 ); // クエリを実行する $the_query = new WP_Query( $args ); ?> <?php if ( $the_query->have_posts() ) : ?> <!-- ループの始まり --> <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?> <?php the_title(); ?> <?php the_excerpt(); ?> <?php endwhile; ?><!-- ループの終わり --> <!-- ページ送り関数をここに入れる --> <?php wp_reset_postdata(); ?> <?php else: ?><!-- 条件に合う投稿が見つからない場合 --> <p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p> <?php endif; ?>
参考
-
$wp_query
グローバル変数を使用します。
変更履歴
- 3.0.0 から導入。
ソースファイル
wp_reset_postdata() は wp-includes/query.php
に含まれています。
関連資料
記事
- 記事: ループ - WordPress ループ内でのクエリの使い方に関する基本的な概要。
- 記事: クエリ概要 - どのクエリが WordPress を生成するのかが決定される方法についての説明。
- 記事: フックを使ったクエリのカスタマイズ
- 記事: カスタムセレクトクエリを使った投稿の表示 /en
- 記事: 高度なタクソノミークエリの生成 /en
- 記事: オフセットとページネーションを活用したカスタムクエリ /en
コード・ドキュメンテーション
- クラス: WP_Query - WP_Query クラスの詳細な全容
- クラス: WP_Comment_Query - コメント関連のクエリのためのクラス
- クラス: WP_User_Query - ユーザー関連のクエリのためのクラス
- オブジェクト: $wpdb - $wpdb オブジェクトの使い方全容
- 関数: set_query_var()
- 関数: get_query_var()
- 関数: query_posts() - 追加のカスタムクエリを作成
- 関数: get_post() - 項目の ID を取得しデータベース内にあるその投稿のレコードを返す
- 関数: get_posts() - 投稿の配列を返すことに特化した関数
- 関数: get_pages() - ページの配列を返すことに特化した関数
- 関数: have posts() - クエリが投稿を返すか否かを判断する条件関数
- 関数: the_post() - クエリ後に自動的にループを設定する
- 関数: rewind_posts() - 現状のループをリセットする
- 関数: setup_postdata() - ループ内で個別の結果を得るためのクエリデータを設定する
- 関数: wp_reset_postdata() - 直前のクエリを復元する (通常はループ内の別のループの後に用いられる)
- 関数: wp_reset_query()
- 関数: is_main_query() - 変更されるクエリがメインのクエリであることを確認する
- アクションフック: pre_get_posts - WordPressクエリが実行される前に変更する
- アクションフック: the_post - post クエリの後で post オブジェクトを変更する
- フィルターフック: found_posts - WP_Query オブジェクトの found_posts 値を変更する
関数リファレンス、テンプレートタグ目次もご覧ください。
最新英語版: WordPress Codex » Function_Reference/wp_reset_postdata (最新版との差分)