S-COBAN

BLOG

WordPressの表示設定で投稿ページに設定した固定ページの情報を取得する方法

WoredPress

WordPressの表示設定で、投稿ページに設定した固定ページの情報を取得する方法として、汎用性を考慮すると対象となる固定ページのスラッグやIDをダイレクトに指定するのは避けたい。

IDをget_option関数で取得する

WordPressの管理画面の設定で指定した情報が取得できるget_option関数を使うことで、表示設定で投稿ページに設定した固定ページのIDを取得することができる。

$posts_id = get_option( 'page_for_posts' );

スラッグやタイトルを取得する

該当ページのIDさえ取得できてしまえば、固定ページのスラッグやタイトル、パーマリンクなどの情報は次のように取得できる。

$posts_id = get_option( 'page_for_posts' ); // ID
$posts_slug = get_post( $posts_id )->post_name; // スラッグ
$posts_title = get_post( $posts_id )->post_title; // タイトル
$posts_link = get_permalink( $posts_id ); // パーマリンク

まとめ

投稿ページとして設定した固定ページのスラッグやIDをダイレクトに指定すれば、get_option関数を使う必要はないけど、何らかの事情によって固定ページの情報を変更したことによって、他のソースコードの修正が伴うようなプログラムではメンテナンスが大変になってしまうので、前述した方法がオススメです。