• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

関数リファレンス/get post

提供: WordPress Codex 日本語版
移動先: 案内検索

投稿 ID で指定した投稿のレコードをデータベースから取得します。$output パラメータで戻り値の型を指定できます。$filter パラメータには、取得したレコード内の各フィールドに対する無害化のコンテキストを指定します。無害化については sanitize_post_field() も見てください。

投稿オブジェクトを指定した場合は、そのオブジェクトの各フィールドを無害化してから指定された型で返します。

使い方

<?php get_post( $id, $output, $filter ); ?>

パラメータ

$id
整数|オブジェクト) (オプション) 取得したい投稿の ID、または無害化したい投稿オブジェクト。デフォルトでは現在の投稿が取得されます。
初期値: null (現在の投稿)
$output
定数) (オプション) 戻り値の型
初期値: 'OBJECT'
有効な値は次のとおりです:
  • 'OBJECT' - 投稿オブジェクトを返します
  • 'ARRAY_A' - 連想配列(フィールド名がキーになります)
  • 'ARRAY_N' - インデックス配列
$filter
文字列) (オプション) 無害化のコンテキスト
初期値: 'raw'
有効な値は次のとおりです。sanitize_post_field() も見てください:
  • 'raw' - 数値フィールドの値のみ無害化
  • 'edit' - 各種フィルターフックで無害化
  • 'db' - 各種フィルターフックで無害化
  • 'display' - 各種フィルターフックで無害化
  • 'attreibute' - 各種フィルターフックの後、esc_attr() で無害化
  • 'js' - 各種フィルターフックの後、esc_js() で無害化

戻り値

WP_Post オブジェクトを返します。指定された投稿が存在しないか、エラーが発生した場合は、null を返します。

参考:戻り値に含まれるフィールドの値は次のとおりです。 データベースの wp_posts テーブルの説明も見てください。

ID 
(整数) 投稿 ID
post_author 
(整数) 作成者 ID
post_date 
(文字列) 投稿日時 (YYYY-MM-DD HH:MM:SS)
post_date_gmt 
(文字列) GMT での投稿日時 (YYYY-MM-DD HH:MM:SS)
post_content 
(文字列) 本文
post_title 
(文字列) タイトル
post_category 
(整数) カテゴリー ID。バージョン 2.1 以降、常に 0 です。投稿のカテゴリーを取得するには get_the_category() を使用してください。
post_excerpt 
(文字列) 抜粋
post_status 
(文字列) 公開ステータス (publish|pending|draft|private|static|object|attachment|inherit|future)
comment_status 
(文字列) コメントステータス (open|closed|registered_only)
ping_status 
(文字列) ピンバック/トラックバックステータス (open|closed)
post_password 
(文字列) 閲覧パスワード
post_name 
(文字列) スラッグ
to_ping 
(文字列) ピン通知 URL
pinged 
(文字列) ピン通知済み URL
post_modified 
(文字列) 更新日時 (YYYY-MM-DD HH:MM:SS)
post_modified_gmt 
(文字列) GMT での更新日時 (YYYY-MM-DD HH:MM:SS)
post_content_filtered 
(文字列)
post_parent 
(整数) 親 ID (固定ページや添付ファイルなどで使用)
guid 
(文字列) 投稿へのリンクの書式になっている識別子。
menu_order 
(整数) 固定ページ の表示順序。
post_type 
(文字列) 投稿タイプ (post|page|attachment)
post_mime_type 
(文字列) 添付ファイルのとき MIME タイプ(image/png など)
comment_count 
(整数) コメント数

用例

ID が 7 の投稿のタイトルを取得する:

<?php
$post_7 = get_post( 7 ); 
$title = $post_7->post_title;
?>

上の例に加えて $output パラメータを指定すると:

<?php
$post_7 = get_post( 7, ARRAY_A );
$title = $post_7['post_title'];
?>

参考

バージョン 3.5 より前は、第 1 パラメータの $post が変数でなければなりませんでした。例えば get_post( 7 ) はエラー(Only variables can be passed for reference または Cannot pass parameter 1 by reference)になっていました。

変更履歴

ソースファイル

get_post()wp-includes/post.php に含まれています。

  • get_post_field() - 投稿 ID とフィールドを指定してデータを取得する。

記事

コード・ドキュメンテーション

  • クラス: 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/get_post最新版との差分