• Jest to moje pierwsze pytanie na tym forum, dlatego na wstępnie chciałbym się ze wszystkimi serdecznie przywitać 🙂

    Dziś zacząłem zabawę z wordpressem i mam takie oto pytanie:
    Tworzę pierwszy szablon i napotkałem pewien problem, nie wiem jak dodać separator między odnośnikami w menu:

    struktura miałby wyglądać następująco:
    <li><a href="#">O NAS</a><div class="border"></div></li>
    chodzi o wrzucenie w strukturę linku diva
    rozumiem że powinienem dopisać coś do tej reguły:
    <?php wp_list_pages('title_li='); ?>

    ale kompletnie nie wiem jak ma to wyglądać.. kombinowałem i niestety nie udaje mi się tego problemu pokonać. Mam nadzieję, że pomożecie mi rozwiązać ten problem

Viewing 13 replies - 1 through 13 (of 13 total)
  • jak dodać separator między odnośnikami w menu:

    Zamiast:

    <?php wp_list_pages(’title_li=’); ?>

    użyj

    <?php wp_nav_menu( $args ); ?>

    Daje większe korzyści a i tak będziesz chciał później ustawiać to menu
    ew. dodawać jakieś elementy etc.

    W funkcji użyj parametru ($args):

    $before lub $after – dzięki temu przed lub za elementem menu pojawi się dowoly znak, napis czy co tam użyjesz np. jakąś encje: | |

    Innym sposoben „odseparowania elementów w menu jest ich stylizacja – starndardowo – wegług arkusza stylów.

    Dla elementów listy wystarczy, że dodasz

    ul li {border-right: 1px solid red;}

    lub jQuery $(„a”).after(„<div />”).addClass(„border”);

    Thread Starter malin1

    (@malin1)

    Innym sposoben „odseparowania elementów w menu jest ich stylizacja – starndardowo – wegług arkusza stylów.

    Dla elementów listy wystarczy, że dodasz

    border-right: 1px solid red;

    div który ustawiłem obok linka ma właśnie atrybut border-right. Nie mogłem go zastosować bezpośrednio na linku ponieważ jest on w dość wysokim bloku, wyższym niż separator, dlatego wykorzystałem diva z obramowaniem z prawej…

    Może jest jednak możliwość dopisanie odniesienia do diva w:
    <?php wp_list_pages('title_li='); ?>

    Nie chciałbym jakoś bardzo głęboko ingerować w kod php strony.. w tym nie jestem póki co zbyt mocny 🙂
    oczywiście jeżeli powiecie że nie mam innego wyjścia to oczywiście spróbuję…

    na wp_list_pages to już chyba tylko zostaje walker http://codex.wordpress.org/Function_Reference/Walker_Class

    ale skoro to tylko element wizualny to przystaję przy jquery

    Thread Starter malin1

    (@malin1)

    Kombinuję z czymś takim:

    <?php wp_list_pages('title_li&link_after=<div class="border"></div>'); ?>

    ale div pojawia mi się przed a powinien za… ktoś ma jakiś pomysł ?

    napisać własną funkcję moje_list_pages() i użyć get_posts() oraz własnej pętli.

    Nie chciałbym jakoś bardzo głęboko ingerować w kod php strony.. w tym nie jestem póki co zbyt mocny 🙂

    Zostałeś rzucony na głęboką wodę i:

    oczywiście jeżeli powiecie że nie mam innego wyjścia to oczywiście spróbuję…

    Nie ma.

    Bo wp nav menu możesz tworzyć rozbudowane struktury menu (o to będziesz pytał w „przyszłości na forum”) a wp list pages tylko wypluwa Ci strony.

    Ew. jak się już upierasz przy tym wp_lisp_pages to jest tam podobna funkcja z tym, że taki separator dodaje w troche inne miejsce:

    title_li to tylko nagłówek dla listy stron

    Separator możesz uzyskać dodając to:

    link_beforelub link_after

    Czyli całość:

    <?php wp_list_pages('link_after= | '); ?>

    Reszte załatwiasz przez css

    pipe | będzie trudno wystylizować i poza tym słabo dodawać znak jako zawartość linku. Już prędzej css

    a:after{
    content:”|”;
    }

    lub

    <?php wp_list_pages(’link_after= <span></span>’); ?>

    i stylizować border spana

    Thread Starter malin1

    (@malin1)

    ale w ten sposób <span></span> pojawi się przd zakończeniem linku a chodzi o to żeby pojawił się za…

    napisałem coś takiego:
    <?php wp_list_pages('title_li&link_after=</a><div class="border"></div>'); ?>

    i działa, ale oczywiście tworzą sie w ten sposób dwa </a> 🙂 wiem że tak nie może być…

    acronym dodaje się automatycznie. Usuń go z funkcji!

    Thread Starter malin1

    (@malin1)

    Już go usunąłem… pokazuję tylko na jaki „genialny” pomysł wpadłem. 😉

    Poczytam o tym wp nav menu, może uda mi się znaleźć coś, co uda mi się wykorzystać.. chyba że znacie jakiś artykuł który na pewno mi pomoże… najlepiej w moim ukochanym ojczystym języku polskim 🙂

    Po pierwsze dałeś nam niezłe pole do namysłu.

    Jakie to jest menu? Pionowe czy poziome?

    Thread Starter malin1

    (@malin1)

    poziome

Viewing 13 replies - 1 through 13 (of 13 total)
  • Temat ‘Struktura menu problemik’ jest zamknięty na nowe odpowiedzi.