Wsparcie » Zaawansowane » Połączenie custom menu z lokalizacją w mysql
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.
-
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.
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ł.
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
,secondary
lubternary
, czyli wstawić tam taki kod.Pomożesz jak to zrobić? 🙂
wp_nav_menu( array( 'theme_location' => 'primary', ) );
- Temat ‘Połączenie custom menu z lokalizacją w mysql’ jest zamknięty na nowe odpowiedzi.