ほぼ社内用の備忘録です。
よく使うコードなので紹介します。
主に「page.php」で使用するコードです。
現在のページが子ページであるとき、その親要素に紐づいている子ページ(=兄弟ページ)をリストで一覧出力する方法です。
<?php if ($post->post_parent) { $current_page_id = get_the_ID(); $parent_id = $post->post_parent; $child_pages = new WP_Query(array( 'post_type' => 'page', 'post_parent' => $parent_id, 'orderby' => 'menu_order', 'order' => 'ASC', 'posts_per_page' => -1 )); if ($child_pages->have_posts()) : ?> <div class="page-selector"> <ul> <?php while ($child_pages->have_posts()) : $child_pages->the_post(); ?> <li class="button <?php echo (get_the_ID() === $current_page_id) ? 'is-current' : ''; ?>"> <a href="<?php the_permalink(); ?>"> <?php the_title_attribute(); ?> </a> </li> <?php endwhile; ?> </ul> </div> <?php endif; wp_reset_postdata(); } ?>
現在のページと同じリンクには「is-current」クラスを付与しています。
ぜひご利用ください。