私は自分のページに2つのナビゲーションバーを持っています。 1つはメインのヘッダーで、もう1つは各ページの上部に表示されます。ここでどのようにWordPressのナビゲーションでトップの親ページを非表示にする
下ナビゲーションバーは、トップナビゲーションバー内のページのchildpages(赤1)を示すべきです。 下のナビゲーションバーのページの1つに子がある場合は、下のナビゲーションバーの下に新しいulとして表示されます。
「メイン」ページの1つ(上部にリンクされているページ)上にある場合は、上部のナビゲーションバーのリンクが下部のナビゲーションバーに表示され、想定されているリンク表示されるのは下のナビゲーションバーの下にあるulに表示されます。このよう
:私はこれが起こる理由を理解
(フォント色のリンクは赤が子供の子供である)、私は問題を解決する方法がわかりません。私は一番上の親ページにいなければ、兄弟姉妹を見せたいだけです。
もう一度やり直してみてください。 トップの親ページにある場合、子供を表示してください。 子供のページの場合は、兄弟姉妹と孫を表示してください。 孫のページに兄弟姉妹と親を表示している場合。ここで
は私のコードです:
<?php
$sibblings = wp_list_pages(array(
'title_li' => '',
'child_of' => $post->post_parent,
'echo' => 0,
'sort_column' => 'menu_order, post_title'
));
$children = wp_list_pages(array(
'title_li' => '',
'child_of' => $post->ID,
'echo' => 0,
'sort_column' => 'menu_order, post_title'
));
?>
<ul class="page-nav hidden-sm hidden-xs">
<?php echo $sibblings; ?>
</ul>
<ul class="page-nav-children hidden-sm hidden-xs">
<?php echo $children; ?>
</ul>
更新
わかりましたので、私は何か新しいものを試してみました。今ではトップの親は表示されませんが、子供がいるページ(トップ・ペアレント・グランド・チルドレン)をクリックすると表示されません。あなたが見て、$ sibblingsのアレイ内の任意のオブジェクトが現在のポストと同じPOST_TITLEを持っているかどうかを確認することができます
<?php
if ($post->post_parent) {
$ancestors=get_post_ancestors($post->ID);
$root=count($ancestors)-1;
$parent = $ancestors[$root];
} else {
$parent = $post->ID;
}
$sibblings = wp_list_pages("title_li=&child_of=". $parent ."&echo=0");
$children = wp_list_pages(array(
'title_li' => '',
'child_of' => $post->ID,
'echo' => 0,
'sort_column' => 'menu_order, post_title'
));
?>
<?php if ($sibblings) { ?>
<ul class="page-nav hidden-sm hidden-xs">
<?php echo $sibblings; ?>
</ul>
<?php } else {?>
<ul class="page-nav hidden-sm hidden-xs">
<?php echo $sibblings; ?>
</ul>
<ul class="page-nav-children hidden-sm hidden-xs">
<?php echo $children; ?>
</ul>
<?php } ?>
しかし、それは削除される予定の同じタイトルの投稿ではありません。これは、すべてのページの一番上の親ページです。赤いヘッダーの5つのリンクが一番上にあります。彼らは今のように灰色の領域に表示されることはありません。 – teninchhero
OK、もう一度やり直してみてください: トップの親ページにある場合は、子どもを表示してください。 子供のページの場合は、兄弟姉妹と孫を表示してください。 孫のページに兄弟姉妹と親を表示している場合。一番上の親を表示しない。 – teninchhero
sibblings配列をダンプしてコードに追加します。 –