前提条件
wp固定ページで親子構造をもっている
- 企業情報 company
ー 社長より company/message
ー 会社概要 company/info
- 事業紹介 biz
ー 製造事業
ー 事例
のような感じで複数のコーナーがたつ
やりたいこと
共通のテンプレートpage.phpを使用して
0. コーナーごとに異なるサブメニューを表示する
0. パンくずナビをプラグイン無しで表示する
うまくいかないこと
上記1と2、片方ずつであれば問題なく表示できるのですが
両方同時にすると、ループ部分から下が出力されません。
試したソース
下記だとサブメニューから下がまるごと出力されません。
<!-- サブメニュー --> <?php if(is_page('company') || page_is_ancestor_of('company')): ?> ・・・ ここにサブメニュー <?php elseif(is_page('biz') || page_is_ancestor_of('biz')): ?> ・・・ ここにサブメニュー <?php endif; ?> <!-- パンくずナビ --> <ul> <?php $count = 0; $per_ids = array_reverse(get_post_ancestors($post->ID)); ?> <li><a href="<?php echo home_url(); ?>">トップ</a></li> <?php foreach ( $per_ids as $par_id ){ $count += 1;?> <li><a href="<?php echo get_page_link( $par_id );?>"><?php echo get_page($par_id)->post_title; ?></a></li> <?php } ?> <li><?php the_title(); ?></li> </ul>
page_is_ancestor_of() を使わず is_page() で書き連ねるとうまくいきます。
また、パンくずナビ無しであれば page_is_ancestor_of() で問題なく出力されます。
<?php if(is_page('company') || is_page('message') || is_page('info')): ?>
できれば運用面を考慮して子ページは一括で指定したいので
解決策をご教授いただければと思います。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/28 06:28