Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [wordpress]problem z wyświetleniem menu
Forum PHP.pl > Forum > Gotowe rozwiązania
pr0kt0r
Czy wie ktoś jak za pomocą funkcji wp_list_pages() wyświetlić wszystkie główne strony + sub_strony dla strony w którą kliknie użytkownik?

Przykład:

Mam taką strukturę menu

Informacje
O nas
Planety
-mars
-jowisz
-saturn
Słońce
Przestrzeń
Galaktyki
-droga mleczna
-UDFJ-21312vdjknvkdj

I chcę aby na stronie głownej wyświetlały się wszystkie bez podstron(to już mi się udało). A po kliknięciu np. w Planety

Informacje
O nas
Planety
-mars
-jowisz
-saturn
Słońce
Przestrzeń
Galaktyki

Czy można to w ogólne zrobić za pomocą tej funkcji czy trzeba kombinować z javascript i add/removeClass ?

Pozdrawiam
vokiel
Pobierasz listę stron do zmiennej (bez wyświetlania) iterujesz po tablicy i wyświetlasz tylko te potrzebne.

Możesz też zrobić menu dwupoziomowe, i w css nadać odpowiednie klasy, tak aby pojawiało się podrzędne linki tylko dla aktualnie wybranego menu.
pr0kt0r
Ok, będę tak kombinował.

//edit

niestety nie wiem, jak to zrobic probuje caly dzien z explode z js ale nic mi nie wychodzi.

//edit 2

Dobra problem rozwiązany... sprawa była banalna, mój problem poległ na tym, że nie zauważyłem, że wordpress dodaje do wyświetlanej strony klasę 'current_page_item'

np.

Kod
    
<ul>

<li class="page_item page-item-32">
<a href="http://localhost/wordpress/kontakt/" title="Kontakt">Kontakt</a>
</li>
<li class="page_item page-item-83">
<a href="http://localhost/wordpress/kooikerhondje/" title="Kooikerhondje">Kooikerhondje</a>
</li>
<li class="page_item page-item-71 [b]current_page_item[/b]">
<a href="http://localhost/wordpress/przyklad/" title="Przyklad">Przyklad</a>
<ul class='children'>
    <li class="page_item page-item-77">
           <a href="http://localhost/wordpress/przyklad/drugi-potomek-przykladu/" title="drugi potomek przykladu">drugi potomek przykladu</a>
        </li>
    <li class="page_item page-item-74">
          <a href="http://localhost/wordpress/przyklad/potomek-przykladu/" title="potomek przykladu">potomek przykladu</a>
        </li>
</ul>
</li>
<li class="page_item page-item-80">
<a href="http://localhost/wordpress/testowa/" title="Testowa">Testowa</a>
<ul class='children'>
    <li class="page_item page-item-90"><a href="http://localhost/wordpress/testowa/potomek-testowe/" title="potomek testowe">potomek testowe</a></li>
</ul>
</li>


jeśli już to wiemy, to nie ma problemu, możemy sobie to ostylować
np.
Kod
div.menu ul li ul.children {display:none;}
.current_page_item ul, li {display:block !important;}
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.