固定ページの親子関係をパンくずリストに追加したい場合
固定ページに親子関係が設定されている場合、パンくずリストに親子関係を反映したい場合があります。 その場合は、
breadcrumb-page.php
<?php
// 現在のページの親ページのidを遡って先祖まで取得
// 親 → 先祖の順で並んでいるため 先祖 → 親の順に並べ替え
$ancestors_ids = array_reverse(get_post_ancestors( $post ));
?>
<span class="breadcrumb" >
HOME >
<?php foreach($ancestors_ids as $ancestors_id){ ?>
<a href="<?php echo get_page_link( $ancestors_id );?>" >
<?php echo get_page($ancestors_id)->post_title; ?>
</a>
>
<?php } ?>
<?php the_title(); ?>
</span>
このように、
- get_post_ancestorsを利用して先祖の投稿ID一覧を取得
- 取得した配列をforeachでループ
- get_page_link()で該当ページへのリンクを取得
- get_page()で投稿を取得し、post_titleを表示
という手順になります。