似た質問にこの質問がありますが、親のさらに親のページのタイトルを取得したいと思っています。どのようなコードを記述すれば実現できるのでしょうか?
ちなみに現在はこのようなコードで親ページのタイトルを取得しています。
global $post;
if (is_page() && $post->post_parent ) {
echo get_the_title($post->post_parent);
} else {
echo "";
}
似た質問にこの質問がありますが、親のさらに親のページのタイトルを取得したいと思っています。どのようなコードを記述すれば実現できるのでしょうか?
ちなみに現在はこのようなコードで親ページのタイトルを取得しています。
global $post;
if (is_page() && $post->post_parent ) {
echo get_the_title($post->post_parent);
} else {
echo "";
}
親が取得できたら、再度同じ処理をしてその親を探せばいいだけだと思いますが??
ご回答ありがとうございます。
ご回答を参考にし、このようなコードを書いてみましたが、カレントページのタイトルが表示されてしまいます。
global $post;
$parent = $post->post_parent;
$gparent = $parent->post_parent;
echo get_the_title($gparent);
どこかおかしなところがあったら、ご指摘いただけると幸いです。
$gparent = $parent->post_parent;
post_parent に入っているのは post_id なので、そこから投稿オブジェクトを得ないといけません。つまり以下のようにします。
$parent_id = $post->post_parent;
if ($parent_id) {
$parent = get_post($parent_id);
echo get_the_title($parent->post_parent);
}おお!問題なく表示されました!
lilyfanさん、ご親切なご回答ありがとうございます。
ログイン しなければ投稿できません。