Wcześniej byłem w stanie selektywnie ładować strony podrzędne dla aktualnie wybranej strony nadrzędnej za pomocą logiki, takiej jak:
if( $post->post_parent ) {
$children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
} else {
$children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
}
if ($children) { ?>
<ul id="subnav">
<?php echo $children; ?>
</ul>
<?php
} else {
}
Wydaje się, że nie ma natywnego sposobu na zrobienie tego za pomocą nowej funkcji register_nav_menus () / wp_nav_menu (). Czy ktoś wie, jak mogę to teraz załatać?
Oto zrzut ekranu tego, co próbuję osiągnąć:
Odpowiedzi:
Stworzyłem widżet o nazwie Page Sub Navigation (mądry, wiem), który działa dla mnie.
Jeśli to zainstalujesz, możesz po prostu przeciągnąć widget do jednego z obszarów widgetów i działa BAM .
A jeśli chcesz tylko soczyste części ...
AKTUALIZACJA
Znalazłem inną wtyczkę, która robi to samo (a może robi to lepiej, nie wiem). http://wordpress.org/extend/plugins/subpages-widget/
źródło
możesz zrobić hack css, aby to zrobić (2 sposoby, które spróbowałbym)
1 jest to najprostszy sposób, w jaki mogę wymusić, aby css wyświetlał elementy w subnavigation.
2 zakładając, że Twój motyw obsługuje klasy ciała, możesz utworzyć menu nawigacji dla każdej „nawigacji podrzędnej” i ustawić je tak, aby wyświetlały się pod główną nawigacją - a następnie edytuj arkusz stylów, aby wyświetlał tylko div diva używającego czegoś takiego:
źródło
1 to jest wyświetlacz php.
2 to jest wyświetlacz css.
źródło
CSS
źródło