Mill's Note

【Wordpress関数】get_queried_object(), get_queried_object_id()

/

get_queried_object() は、アーカイブページ ( カテゴリーやカスタム投稿等)、投稿や固定ページなど、現在表示されているページの情報を取得するWordpressテンプレートタグ。

何かの操作で ID だけ欲しいときは、get_queried_object_id() でサクッと取得できます。

get_queried_object_id()の呼び出し

たったこれだけで、様々なページで ページID を取得できる優れもの。
ページ毎に書き換える必要が無くなるので、module化する関数などにお勧め^^

PHP
<?php $obj_id = get_queried_object_id(); ?>

get_queried_object()の呼び出しと使用例

下はごく一例。
get_queried_object() を呼び出すだけで様々な情報が取得できるので、使い回しの多いテンプレートなどで重宝します^^

PHP
<?php $obj = get_queried_object(); ?>
投稿(WP_Post)戻り値 (一部)
タイトル$obj -> 'post_title';
ID$obj -> 'ID';
抜粋$obj -> 'post_excerpt';
投稿日$obj -> 'post_date';
アーカイブ(WP_Term)戻り値 (一部)
タイトル$obj -> 'name';
ID$obj -> 'term_id';
スラッグ$obj -> 'slug';
説明$obj -> 'description';

get_queried_object() 戻り値 (返り値)

リクエストページ戻り値
トップページ //最新の投稿NULL
トップページ //固定ページWP_Post ( $post, get_post() ) で取得できる情報
投稿、固定ページ、カスタム投稿 // is_singular()WP_Post ( $post, get_post() ) で取得できる情報
カテゴリ、投稿タグ、タクソノミーアーカイブWP_Term ( get_category(), get_terms() ) で取得できる情報
投稿タイプアーカイブ // is_post_type_archive()WP_Post_Type ( get_post_type_object() ) で取得できる情報
投稿者アーカイブ // is_author()WP_User ( get_userdata() ) で取得できる情報
日付アーカイブNULL