Wsparcie » Zaawansowane » Połączenie custom menu z lokalizacją w mysql

  • Witam,

    Mam duży problem: posiadam płatny szablon, który posiada własne menu. Nie ma możliwości powiązana własnego menu np. z primary lub secondary menu. Problem jest taki, że robiłem witrynę od nowa i menu górne jakimś cudem działa, ale footer – cokolwiek tam dodam nie pojawia się, Na 100% problem leży w tym, iż nie jest ono powiązana locations w bazie z menu w stopce w szablonie. Ale nie wiem jak to zrobić.

    Nazwane są tak jak należy tj. tak jak tworzy demo importer z szablonu, w którym oba menu działają: Footer Menu i Primary Menu. W bazie mysql również slug się zgadza. Przypuszczam, że nie zgadza się ID, ale nie wiem gdzie należy wstawić term_ID tych menu, żeby się powiązały.

Viewing 7 replies - 1 through 7 (of 7 total)
  • Z płatnymi szablonami należy się kierować do jego wykonawcy. To w jego interesie leży naprawianie swoich błędów. Nie zrozum mnie źle, ale są tu na forum pewne zasady i wytyczne. Forum wsparcia dotyczy tylko i wyłącznie motywów z repozytorium WordPress, do których każdy ma dostęp.

    Thread Starter siriuspro

    (@siriuspro)

    Rozumiem, ale pytanie dotyczy ogólnie WordPressa.

    Zatem sprecyzuje – gdzie WordPress w bazie, w którym miejscu łączy menu np. primary z ID stworzonego przeze mnie menu.

    Jasne.

    Menu zacznie działać jak należy przede wszystkim jeśli motyw spełnia te dwa warunki:

    1. Najpierw menu musi być ono zarejestrowane funkcją: register_nav_menu
    Przy czym należy pamiętać, aby dodać parametr: $locations jeżeli chcesz przypisywać je potem do określonego miejsca na stronie.

    2. A następnie, żeby manu pojawiło się na stronie musi być ono wywołane funkcją: wp_nav_menu z parametrem: 'theme_location' (które odnosi się do $locations, utworzonego wcześniej), żeby można było je wybrać w ustawieniach.

    Więcej w dokumentacji: https://codex.wordpress.org/Navigation_Menus lub tutaj: KLIK a tutaj znajdziesz info jak je tworzyć, żeby działało: KLIK

    Zatem sprecyzuje – gdzie WordPress w bazie, w którym miejscu łączy menu np. primary z ID stworzonego przeze mnie menu.

    Nie ma sensu doszukiwać się tu zależności i grzebać w bazie danych. Jeżeli poprawnie użyto w.w. funkcji menu ma pojawić się na stronie.

    • Ta odpowiedź została zmodyfikowana 7 years, 1 months temu przez Paweł.
    Thread Starter siriuspro

    (@siriuspro)

    No właśnie tak:

    1. Szablon na pewno używa tej funkcji, bo znalazłem ją w kodzie:
    register_nav_menus( array(
    'primary’ => esc_html__( 'Primary Menu’, 'cookie’ ),
    'secondary’ => esc_html__( 'Top Bar Menu’, 'cookie’ ),
    'ternary’ => esc_html__( 'Footer Menu’, 'cookie’ ),
    ) );

    2. Tu jest problem: w menu nie mam możliwości powiązania menu z primary albo secondary location, więc tego szablon raczej nie obsługuje.

    Sugerujesz, że najprościej będzie zaimplementować location w temacie?

    Sugerujesz, że najprościej będzie zaimplementować location w temacie?

    Jeżeli masz już zarejestrowane menu, należy je teraz wywołaś na stronie funkcją: wp_nav_menu() i w niej dodać lokalizację: primary, secondarylub ternary, czyli wstawić tam taki kod.

    Thread Starter siriuspro

    (@siriuspro)

    Pomożesz jak to zrobić? 🙂

    Paweł

    (@mrpauloen)

    wp_nav_menu( array(
        'theme_location' => 'primary',
    ) );
Viewing 7 replies - 1 through 7 (of 7 total)
  • Temat ‘Połączenie custom menu z lokalizacją w mysql’ jest zamknięty na nowe odpowiedzi.